WO2021143660A1 - 一种数据传输的方法和装置 - Google Patents

一种数据传输的方法和装置 Download PDF

Info

Publication number
WO2021143660A1
WO2021143660A1 PCT/CN2021/071180 CN2021071180W WO2021143660A1 WO 2021143660 A1 WO2021143660 A1 WO 2021143660A1 CN 2021071180 W CN2021071180 W CN 2021071180W WO 2021143660 A1 WO2021143660 A1 WO 2021143660A1
Authority
WO
WIPO (PCT)
Prior art keywords
address
segment
variable
network
address segment
Prior art date
Application number
PCT/CN2021/071180
Other languages
English (en)
French (fr)
Inventor
李广鹏
蒋胜
汤佶凡
龚向阳
张万里
田野
Original Assignee
华为技术有限公司
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 华为技术有限公司 filed Critical 华为技术有限公司
Publication of WO2021143660A1 publication Critical patent/WO2021143660A1/zh

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/74Address processing for routing
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/54Organization of routing tables
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/74Address processing for routing
    • H04L45/745Address table lookup; Address filtering

Definitions

  • This application relates to the field of communication technology, and in particular to a method and device for data transmission.
  • each network area has a corresponding network area address, and the network area address is used to uniquely identify the network area globally.
  • the highest-level network area A corresponds to a network area level of 1
  • its network area address can be 1
  • its next level of network area B corresponds to a network area level of 2
  • its network area address can be Is 1.1, and so on.
  • its subnets can include network devices, each subnet has a corresponding subnet identification number, each network device has a device number, and the network level address of each network device is the network to which it belongs The network area address of the area.
  • the network address of each network device is composed of a network number and a device number, and the network number is composed of a network level address and a subnet identification number.
  • the network address of the network device level of X is 1.1, the subnet identification number 2, device number 10, a network address belonging to the network device under X B sub-network area of 1.1.2. 10.
  • a network address is composed of multiple address segments, and each address segment can be represented by a bit string of different lengths. Of course, according to requirements, each address segment in a network address can be represented by a bit string of the same length according to network planning.
  • the source network device when the source network device sends a data packet to the destination network device, it needs to carry the active address and the destination address in the data packet.
  • the source address is the network address of the source network device that sends the data packet
  • the destination address is the network address of the destination network device that finally receives the data packet.
  • the source address and destination address carried therein are the complete network addresses of the source network device and the destination network device.
  • the network area corresponding to the network area to which the source network device and the destination network device belong is low, the length of the source network address and the destination network address carried in the data packet will be longer, and for the switching device, the length is too long.
  • the source address and destination address will reduce the efficiency of sending data packets.
  • the embodiments of the present application provide a data transmission method and device, which can solve the problem of low forwarding efficiency in related technologies.
  • the technical solution is as follows:
  • a data transmission method including:
  • the data packet carries a variable-length source address, a variable-length destination address, and indication information
  • the variable-length source address includes some or all of the address segments in the source address of the data packet
  • the variable-length destination address includes part or all of the address segments in the source address of the data packet
  • the indication information is used to indicate the network area corresponding to the variable-length source address and the start address segment in the variable-length destination address grade
  • variable-length source address and the variable-length destination address in the data packet are increased or decreased in the address segment, and the indication information in the data packet is performed Update processing to obtain the processed data packet;
  • the source address refers to the complete network address of the source network device
  • the destination address refers to the complete network address of the destination network device.
  • the start address segment of the variable-length source address refers to the first address segment in the variable-length source address.
  • the start address segment of the variable-length destination address refers to the first address segment in the variable-length destination address.
  • the indication information may include one level identification or two level identifications. When the indication information includes a level identifier, the level identifier is used to indicate the network area level corresponding to the start address segment in the variable-length source address, and also to indicate the network area level corresponding to the start address segment in the variable-length destination address. Network area level.
  • the indication information includes two level identifiers
  • one of the level identifiers is used to indicate the network area level corresponding to the start address segment in the variable-length source address
  • the other level identifier is used to indicate the start of the variable-length destination address.
  • the address segment increase/decrease processing is performed on the variable-length source address and the variable-length destination address in the data packet based on the network-level address of the second network device and the indication information ,include:
  • variable-length source address and the variable-length destination address meet the address segment supplementary condition, if If the address segment supplement condition is met, the address segment supplement processing is performed on the variable-length source address and the variable-length destination address;
  • address segment supplement condition is not met, based on the network-level address of the second network device and the indication information, perform address segment deletion processing on the variable-length source address and the variable-length destination address.
  • the method of address segment addition can be performed first, and if the address segment addition condition is met, the address segment addition processing is performed instead of the address segment deletion method. If the address segment supplement condition is not met, the method of address segment deletion is executed. In addition, you can also execute the address segment deletion method first. If the address segment deletion condition is met, the address segment deletion process is performed, and the address segment supplement method is no longer executed. If the address segment deletion condition is not met , The method of supplementing the address segment is performed. Alternatively, the method of address segment addition and the method of address segment deletion can also be executed in parallel.
  • variable-length source address and variable-length destination address No matter which execution order is adopted, in the end, for the variable-length source address and variable-length destination address, only the address segment addition processing or address segment deletion processing is performed, or both processing is not performed, and it will not happen that the address segment has been performed.
  • the supplementary processing has performed the address segment deletion processing.
  • the address segment increase/decrease processing is performed on the variable-length source address and the variable-length destination address in the data packet based on the network-level address of the second network device and the indication information ,include:
  • variable-length source address and the variable-length destination address meet the address segment reduction condition, and if the address segment reduction condition is met, then Performing address segment deletion processing on the variable-length source address and the variable-length destination address;
  • variable-length source address and the variable-length destination are The address undergoes address segment supplement processing.
  • the indication information includes a first-level identifier, and the first-level identifier is used to indicate the network corresponding to the start address segment in the variable-length source address and the variable-length destination address.
  • Regional level L is used to indicate the network corresponding to the start address segment in the variable-length source address and the variable-length destination address.
  • variable-length source address and variable-length destination address satisfy an address segment supplement condition based on the network-level address of the first network device, the indication information, and the network-level address of the second network device If the address segment supplement condition is satisfied, then the address segment supplement processing is performed on the variable-length source address and the variable-length destination address, including:
  • the first-level identifier Based on the network-level address of the first network device, the first-level identifier, and the network-level address of the second network device, determine whether the variable-length source address and the variable-length destination address meet the address segment supplement condition , If the address segment supplement condition is met, then perform address segment supplement processing on the variable-length source address and the variable-length destination address;
  • perform address segment deletion processing on the variable-length source address and the variable-length destination address based on the network-level address of the second network device and the indication information include:
  • address segment supplement condition is not met, based on the network-level address of the second network device and the first-level identifier, perform address segment deletion processing on the variable-length source address and the variable-length destination address .
  • the indication information carried in the data packet may include a first-level identifier, and the first-level identifier is used to indicate the network area level corresponding to the start address segment in the variable-length source address. , Is also used to indicate the network area level corresponding to the start address segment in the variable-length destination address.
  • Each network area corresponds to a unique level identifier.
  • the level identifier can be the level of the network area level. If the network area level is 1, then the level identifier can be considered as 1.
  • variable-length source address and the network-level address of the second network device are determined based on the network-level address of the first network device, the first-level identifier, and the network-level address of the second network device. Whether the variable-length destination address satisfies the address segment supplement condition, and if the address segment supplement condition is met, performing address segment supplement processing on the variable-length source address and the variable-length destination address includes:
  • the first address segment refers to the address segment in the network-level address of the first network device
  • the second address segment refers to the address segment in the network-level address of the second network device
  • variable-length source address e.g., a configurable address of the second network device
  • the variable-length destination address e.g., a configurable address of the second network device
  • the third address segment refers to the address segment in the variable-length destination address
  • the fourth address segment refers to the address segment in the variable-length source address
  • the indication information includes a second-level identifier and a third-level identifier
  • the second-level identifier is used to indicate the network area level corresponding to the start address segment in the variable-length source address M.
  • the third level identifier is used to indicate the network area level N corresponding to the start address segment in the variable-length destination address;
  • the indication information, and the network-level address of the second network device performing address segment supplement processing on the variable-length source address and the variable-length destination address ,include:
  • the second-level identifier Based on the network-level address of the first network device, the second-level identifier, and the network-level address of the second network device, it is determined whether the variable-length destination address satisfies the first address segment supplementary condition, if the variable If the long destination address meets the first address segment supplement condition, then the address segment supplement processing is performed on the variable length destination address;
  • variable-length source address satisfies the second address segment supplementary condition, and if the variable-length source address If the long source address satisfies the second address segment supplement condition, then the address segment supplement processing is performed on the variable length source address;
  • address segment supplement condition If the address segment supplement condition is not met, then based on the network level address of the second network device and the indication information, perform address segment deletion processing on the variable-length source address and the variable-length destination address ,include:
  • variable-length destination address does not meet the first address segment supplement condition, then based on the network-level address of the second network device and the second-level identifier, perform address segment deletion on the variable-length destination address handle;
  • variable-length source address does not satisfy the second address segment supplementary condition, then based on the network-level address of the second network device and the third-level identifier, perform address segment deletion on the variable-length source address handle.
  • the indication information carried in the data packet may include the second-level identifier and the third-level indication information.
  • the second level identifier is used to indicate the network area level corresponding to the start address segment in the variable-length destination address.
  • the third level identifier is used to indicate the network area level corresponding to the start address segment in the variable-length source address.
  • each network area corresponds to a unique level identifier.
  • the level identifier can be the level of the network area level. If the network area level is 1, then the level identifier can be regarded as 1.
  • the address segment increase and decrease processing for the variable-length source address and the variable-length destination address can be performed separately, and the address segment increase and decrease processing of the two can not affect each other, that is, the address segment of the variable-length source address and the variable-length destination address can be increased or decreased More flexible.
  • the determining whether the variable-length destination address satisfies the network-level address of the first network device, the second-level identifier, and the network-level address of the second network device includes:
  • the X"th address segment to the N-1th address segment in the network-level address of the first network device are determined as supplementary address segments and added to the front end of the variable-length source address.
  • variable-length destination address does not meet the supplementary condition of the first address segment, based on the network-level address of the second network device and the second-level identifier,
  • the address segment deletion processing for the variable-length destination address includes:
  • variable-length source address does not meet the second address segment supplementary condition, perform an address segment on the variable-length source address based on the network-level address of the second network device and the third-level identifier Reduction processing, including:
  • the determining the network-level address of the second network device corresponding to the next hop of the data packet based on the variable-length destination address and the indication information includes:
  • the port identifier of the target port used to send the data packet in the first network device is determined, wherein the target port corresponds to the next hop of the data packet Second network device connection;
  • the sending the processed data packet to the second network device includes:
  • the first network device can determine whether the variable-length destination address needs to be filled according to the instruction information. If the indication information indicates that the network area level corresponding to the start address segment in the variable-length destination address is 1, there is no need to supplement the variable-length destination address. If the indication information indicates that the network area level corresponding to the start address segment in the variable-length destination address is not 1, then the variable-length destination address needs to be supplemented to obtain the destination address.
  • the destination address can be used to query the routing table to obtain the port identifier of the target port used to forward the data packet.
  • the network-level address of the network device directly connected to the target port can be determined according to the port identifier.
  • the network device directly connected to the target port is the second network device of the next hop corresponding to the data packet.
  • the obtaining the network-level address of the second network device based on the target port includes:
  • the obtaining the network-level address of the second network device based on the target port includes:
  • a data transmission method which is applied to a source network device, and the method includes:
  • the data packet is sent.
  • variable-length source address Based on the source address and the destination address, a variable-length source address, a variable-length destination address, and a corresponding first-level identifier are generated.
  • variable-length source address and the variable-length destination address meet the address segment reduction condition, and if the address segment reduction condition is met, then Performing address segment deletion processing on the variable-length source address and the variable-length destination address;
  • variable-length source address and the variable-length destination are The address undergoes address segment supplement processing.
  • the generating a variable-length source address, a variable-length destination address, and a corresponding first-level identifier based on the source address and the destination address includes:
  • the indication information includes a second-level identifier and a third-level identifier
  • the second-level identifier is used to indicate the network area level corresponding to the start address segment in the variable-length source address
  • the third level identifier is used to indicate the network area level corresponding to the start address segment in the variable-length destination address
  • the generating a variable-length source address, a variable-length destination address, and corresponding indication information based on the source address and the destination address includes:
  • variable-length source address and a corresponding third-level identification are generated
  • variable-length destination address and a corresponding second-level identifier are generated.
  • the generating a variable-length destination address and a corresponding third-level identifier based on the source address and the destination address includes:
  • a data transmission method is provided, the method is applied to a first network device, and the method includes:
  • the data packet carries a variable-length destination address and indication information
  • the variable-length destination address includes part or all of the address segments in the destination address of the data packet
  • the indication information is used to indicate The network area level corresponding to the start address segment in the variable-length destination address
  • variable-length destination address in the data packet is increased or decreased in the address segment, and the indication information in the data packet is updated to be processed After the data grouping;
  • the performing address segment increase or decrease processing on the variable-length destination address in the data packet based on the network-level address of the second network device and the indication information includes:
  • variable-length destination address meets the address segment supplementary condition, and if the address segment supplementary condition is met , Then perform address segment supplement processing on the variable-length destination address;
  • address segment supplement condition is not met, based on the network-level address of the second network device and the indication information, perform address segment deletion processing on the variable-length destination address.
  • the performing address segment increase or decrease processing on the variable-length destination address in the data packet based on the network-level address of the second network device and the indication information includes:
  • variable-length destination address Based on the network-level address of the second network device and the indication information, it is determined whether the variable-length destination address meets an address segment reduction condition, and if the address segment reduction condition is met, the variable-length destination address Perform address segment deletion processing;
  • an address segment addition process is performed on the variable-length destination address.
  • the indication information is used to indicate the network area level L corresponding to the start address segment in the variable-length destination address, and the network area level L is based on the network level address of the first network device,
  • the instruction information and the network-level address of the second network device determine whether the variable-length destination address meets the address segment supplement condition, and if the address segment supplement condition is met, perform address segment supplement processing on the variable-length destination address, include:
  • the Xth address segment to the L-1th address segment in the network-level address of the first network device are determined as supplementary address segments and added to the front end of the variable-length destination address.
  • the indication information is used to indicate the network area level L corresponding to the start address segment in the variable-length destination address, and if the address segment supplement condition is not met, it is based on the The network-level address of the second network device and the indication information, and performing address segment deletion processing on the variable-length source address and the variable-length destination address includes:
  • the determining the network-level address of the second network device corresponding to the next hop of the data packet based on the variable-length destination address and the indication information includes:
  • the port identifier of the target port used to send the data packet in the first network device is determined, wherein the target port corresponds to the next hop of the data packet Second network device connection;
  • the obtaining the network-level address of the second network device based on the target port includes:
  • the obtaining the network-level address of the second network device based on the target port includes:
  • a data transmission device in a fourth aspect, includes:
  • An acquisition module for acquiring a data packet wherein the data packet carries a variable-length source address, a variable-length destination address, and indication information, and the variable-length source address includes part or all of the source address of the data packet Address segment, the variable-length destination address includes part or all of the address segment in the source address of the data packet, and the indication information is used to indicate the variable-length source address and the start address segment in the variable-length destination address Corresponding network area level;
  • a determining module configured to determine, based on the variable-length destination address and the indication information, the network-level address of the second network device corresponding to the data packet;
  • the processing module is configured to perform address segment increase/decrease processing on the variable-length source address and variable-length destination address in the data packet based on the network-level address of the second network device and the indication information, and perform processing on the data
  • the instruction information in the group is updated, and the processed data group is obtained;
  • the sending module is configured to send the processed data packet to the second network device.
  • the processing module is configured to:
  • variable-length source address and the variable-length destination address meet the address segment supplementary condition, if If the address segment supplement condition is met, the address segment supplement processing is performed on the variable-length source address and the variable-length destination address;
  • address segment supplement condition is not met, based on the network-level address of the second network device and the indication information, perform address segment deletion processing on the variable-length source address and the variable-length destination address.
  • the indication information includes a first-level identifier, and the first-level identifier is used to indicate the network corresponding to the start address segment in the variable-length source address and the variable-length destination address.
  • Regional level L is used to indicate the network corresponding to the start address segment in the variable-length source address and the variable-length destination address.
  • the processing module is used for:
  • the first-level identifier Based on the network-level address of the first network device, the first-level identifier, and the network-level address of the second network device, determine whether the variable-length source address and the variable-length destination address meet the address segment supplement condition , If the address segment supplement condition is met, then perform address segment supplement processing on the variable-length source address and the variable-length destination address;
  • address segment supplement condition is not met, based on the network-level address of the second network device and the first-level identifier, perform address segment deletion processing on the variable-length source address and the variable-length destination address .
  • the processing module is configured to:
  • the processing module is configured to:
  • the indication information includes a second-level identifier and a third-level identifier
  • the second-level identifier is used to indicate the network area level corresponding to the start address segment in the variable-length source address M.
  • the third level identifier is used to indicate the network area level N corresponding to the start address segment in the variable-length destination address;
  • the processing module is used to:
  • the second-level identifier Based on the network-level address of the first network device, the second-level identifier, and the network-level address of the second network device, it is determined whether the variable-length destination address satisfies the first address segment supplementary condition, if the variable If the long destination address meets the first address segment supplement condition, then the address segment supplement processing is performed on the variable length destination address;
  • variable-length source address satisfies the second address segment supplementary condition, and if the variable-length source address If the long source address satisfies the second address segment supplement condition, then the address segment supplement processing is performed on the variable length source address;
  • variable-length destination address does not meet the first address segment supplement condition, then based on the network-level address of the second network device and the second-level identifier, perform address segment deletion on the variable-length destination address handle;
  • variable-length source address does not satisfy the second address segment supplementary condition, then based on the network-level address of the second network device and the third-level identifier, perform address segment deletion on the variable-length source address handle.
  • the processing module is configured to:
  • the X"th address segment to the N-1th address segment in the network-level address of the first network device are determined as supplementary address segments and added to the front end of the variable-length source address.
  • the processing module is configured to:
  • variable-length source address does not meet the second address segment supplementary condition, perform an address segment on the variable-length source address based on the network-level address of the second network device and the third-level identifier Reduction processing, including:
  • the determining module is configured to:
  • the port identifier of the target port used to send the data packet in the first network device is determined, wherein the target port corresponds to the next hop of the data packet Second network device connection;
  • the sending module is used to:
  • the determining module is configured to:
  • the determining module is configured to:
  • a data transmission device in a fifth aspect, includes:
  • the obtaining module is used to obtain the source address and destination address of the data to be sent;
  • the determining module is configured to generate a variable-length source address, a variable-length destination address, and corresponding indication information based on the source address and the destination address, wherein the variable-length source address is deleted from the source address of the data packet Part of the front-end address segment or the address segment is not deleted, and the variable-length destination address is obtained by subtracting a part of the front-end address segment or no address segment from the destination address of the data packet, the indication information Used to indicate the network area level corresponding to the start address segment in the variable-length source address and the variable-length destination address;
  • a generating module configured to generate a data packet carrying the data, the variable-length source address, the variable-length destination address, and the indication information
  • the sending module is configured to send the data packet based on the destination address.
  • the indication information includes a first-level identifier, and the first-level identifier is used to indicate the network corresponding to the start address segment in the variable-length source address and the variable-length destination address.
  • the determining module is used to:
  • variable-length source address Based on the source address and the destination address, a variable-length source address, a variable-length destination address, and a corresponding first-level identifier are generated.
  • the determining module is configured to:
  • the indication information includes a second-level identifier and a third-level identifier
  • the second-level identifier is used to indicate the network area level corresponding to the start address segment in the variable-length source address
  • the third level identifier is used to indicate the network area level corresponding to the start address segment in the variable-length destination address
  • the determining module is used to:
  • variable-length source address and a corresponding third-level identification are generated
  • variable-length destination address and a corresponding second-level identifier are generated.
  • the determining module is configured to:
  • a network device in a sixth aspect, includes:
  • a transceiver for acquiring a data packet wherein the data packet carries a variable-length source address, a variable-length destination address, and indication information, and the variable-length source address is the source address of the data packet by deleting the front end
  • the variable-length destination address is obtained by subtracting a part of the front-end address segment or without subtracting the address segment from the destination address of the data packet
  • the indication information is obtained by To indicate the network area level corresponding to the start address segment in the variable-length source address and the variable-length destination address;
  • a memory including computer readable instructions
  • variable-length source address and the variable-length destination address in the data packet are increased or decreased in the address segment, and the indication information in the data packet is performed Update processing to obtain the processed data packet;
  • the transceiver is further configured to send the processed data packet to the second network device.
  • a source network device in a seventh aspect, includes:
  • Transceiver used to obtain the source address and destination address of the data to be sent
  • a memory including computer readable instructions
  • variable-length source address is a partial address segment of the source address of the data packet that is deleted Or obtained without deleting the address segment
  • variable-length destination address is obtained by deleting part of the front-end address segment or not deleting the address segment in the destination address of the data packet
  • indication information is used to indicate the The network area level corresponding to the start address segment in the variable-length source address and the variable-length destination address
  • a computer-readable storage medium including computer-readable instructions, which when the computer-readable storage medium runs on a first network device, cause the first network device to execute the above-mentioned first aspect The data transmission method described.
  • a computer program product containing instructions, which when the computer program product runs on a first network device, causes the first network device to execute the data transmission method described in the first aspect.
  • a computer-readable storage medium including computer-readable instructions, which when the computer-readable storage medium runs on a source network device, cause the source network device to execute the above-mentioned second aspect Data transmission method.
  • a computer program product containing instructions when the computer program product runs on a source network device, the source network device executes the data transmission method described in the second aspect.
  • the data packet carries the variable-length source address, the variable-length destination address, and indication information.
  • the variable-length source address includes part or all of the address segment in the source address
  • the variable-length destination address includes part or all of the address segment in the destination address.
  • the indication information is used to indicate the variable-length source address and the variable-length destination address corresponding to the start address segment.
  • Network area level It can be seen that there is no need to carry the complete destination address and the complete source address in the data packet. After receiving the data packet, the network device will increase or decrease the variable-length source address and the variable-length destination address carried therein, and then send the data packet. Therefore, there is no need to carry a complete destination address and a complete source address in the data packet, which can effectively improve the transmission efficiency of the data packet by the network device.
  • FIG. 1 is a schematic diagram of a hierarchical network provided by an embodiment of the present application
  • FIG. 2 is a flowchart of a data transmission method provided by an embodiment of the present application.
  • FIG. 3 is a schematic diagram of indication information in a data packet provided by an embodiment of the present application.
  • FIG. 4 is a schematic diagram of indication information in a data packet provided by an embodiment of the present application.
  • FIG. 5 is a flowchart of a data transmission method provided by an embodiment of the present application.
  • FIG. 6 is a schematic structural diagram of a data transmission device provided by an embodiment of the present application.
  • FIG. 7 is a schematic structural diagram of a data transmission device provided by an embodiment of the present application.
  • FIG. 8 is a schematic structural diagram of a network device provided by an embodiment of the present application.
  • FIG. 9 is a schematic structural diagram of a source network device provided by an embodiment of the present application.
  • the embodiment of the present application provides a data transmission method, which can be implemented by a network device in a hierarchical network.
  • FIG 1 it is a schematic diagram of a hierarchical network.
  • the hierarchical network includes multiple network areas and multiple subnets, such as subnet N1, subnet N2, subnet N3, and subnet N4.
  • the network device C1 in the subnet N1 serves as the source network device and can send data packets to the network device C2 in the subnet N4, and C2 is the destination network device.
  • the level and affiliation of the network area are designated.
  • This designated level is called the network area level.
  • the network area level of network area A is 1
  • the network area level of network area B is 2
  • the network area level of network area C is 2
  • the network area level of network area D is 3.
  • the network area level of network area E is 3
  • the network area level of network area F is 4, and the network area level of network area G is 1.
  • the network area address is the globally unique mark of the network area.
  • the address of a network area is inherited from its immediate high-level network area.
  • the network area address of network area A is 1
  • the network area address of network area B is 1.1
  • the network area address of network area C is 1.2
  • the network area address of network area D is 1.1.1
  • the network area address of network area E is 1.2.1
  • the network area address of network area F is 1.1.1.1
  • the network area address of network area G is 2.
  • the network address is an identifier of each network device that needs to communicate in the network, is the basis for the switching device to forward data packets, and is globally unique.
  • Each network address is composed of a network number and a device number.
  • the device number is used to identify a network device in a subnet. It can be represented by a number plus an underline.
  • the network number is its corresponding network level address and the subnet of the subnet Net identification number.
  • the packet network shown in Figure 1 the network address of the network device sub-network N1 C1 may be 1.1.1.1.1. 10. Among them, 1.1.1.1.1 is the network number, and 10 is the device number.
  • variable-length destination address replaces the complete destination address carried in the traditional data packet.
  • each network device may perform address segment increase or decrease processing on the variable-length destination address carried in the data packet, so that the length of the address segment of the variable-length destination address changes.
  • the network device can obtain the complete destination address of the data packet according to its own network-level address and variable-length destination address.
  • the variable-length destination address is only the name defined for the network address with the above characteristics in the embodiment of the present application. Of course, it can also be defined as other names, which are not limited in the embodiments of the present application.
  • a data transmission method provided by this embodiment of the application can be implemented by a first network device, and the processing flow of the method can include the following steps:
  • Step 201 Obtain a data packet.
  • the data packet carries the variable-length source address, the variable-length destination address, and indication information.
  • the variable-length source address includes part or all of the address segment in the source address of the data packet. If it includes a part of the address segment, the part of the address segment is in the source. The address is located at the back of the address segment other than this part of the address segment.
  • the variable-length destination address is part or all of the address segment in the destination address of the data packet. If part of the address segment is included, the part of the address segment is at the destination address. Is located at the back of the address segment except this part of the address segment, and the indication information is used to indicate the network area level corresponding to the start address segment in the variable-length source address and the variable-length destination address.
  • the indication information may also be referred to as the starting network address level indication information, and its name is not limited in this application.
  • the network device may be a source network device, and the source network device may produce and group data to obtain data packets.
  • the network device may also be a switching device for forwarding data, and the switching device may receive the data packet sent by the previous hop network device.
  • the network layer protocol header of the data packet carries the variable-length source address, the variable-length destination address, and indication information. For the initial network address level indication information, the following situations may be possible.
  • the indication information carried in the data packet may include a first-level identifier.
  • the first-level identifier is used to indicate the network area level corresponding to the start address segment of the variable-length source address in the data packet, and also to indicate the level of the network area in the data packet.
  • the network area level corresponding to the start address segment in the variable-length destination address is used to indicate the network area level corresponding to the start address segment in the variable-length destination address.
  • the first level identifier may be the network area level corresponding to the start address segment of the variable-length source address and the variable-length destination address in the data packet.
  • identification of a first level L i.e., may represent a start address of the segment becomes long destination address 1.2.6. 7 and the source address of 1.2.3.4. 5 "1", corresponding to areas of the network level is L.
  • first-level identifier may also be expressed in other forms, and the specific representation form of the first-level identifier is not limited in the embodiment of the present application.
  • FIG. 3 only exemplarily shows the order of a variable-length source address, a variable-length destination address, and a first-level identifier in the network layer protocol header, the variable-length source address, the variable-length destination address, and the first-level identifier.
  • the first-level identifiers can also be arranged in other orders in the network layer protocol header, which is not limited in this application.
  • the indication information carried in the data packet may include a second-level identifier and a third-level identifier.
  • the second-level identifier is used to indicate the network area level corresponding to the start address segment in the variable-length destination address
  • the third-level identifier is used to indicate the change.
  • the second level identifier may be the network area level corresponding to the start address segment in the variable-length destination address in the data packet.
  • the third level identifier may be the network area level corresponding to the start address segment in the variable-length source address.
  • the second level is identified as M, which can indicate that the starting address segment "1" in the variable-length destination address 1.1.1. 10 corresponds to the network area level as M, and the second level is identified as N, which can indicate the source address 2.1.2.
  • the network area level corresponding to the start address segment "2" in 10 is M.
  • FIG. 4 only exemplarily shows the order of a variable-length source address, a variable-length destination address, a second-level identifier, and a third-level identifier in the network layer protocol header.
  • the variable-length source address, the variable-length The destination address, the second-level identifier, and the third-level identifier may also be arranged in other orders in the network layer protocol header, which is not limited in this application.
  • the first network device obtains the variable-length destination address and the indication information in the data packet.
  • the variable-length destination address and the first-level identifier can be acquired.
  • the variable-length destination address and the third-level identifier can be obtained.
  • the routing table can be queried to determine the port identifier of the target port used to send the data packet in the first network device, and the target port is connected to the second network device of the next hop corresponding to the data packet through a link.
  • variable-length destination address Before querying the routing table, you can first determine whether the variable-length destination address needs to be filled according to the instruction information. If the indication information indicates that the network area level corresponding to the start address segment in the variable-length destination address is 1, there is no need to supplement the variable-length destination address. If the indication information indicates that the network area level corresponding to the start address segment in the variable-length destination address is not 1, then the variable-length destination address needs to be supplemented to obtain the destination address.
  • variable-length destination address When the variable-length destination address is complemented, it can be implemented according to the instruction information and the network-level address of the first network device. That is, in the network-level address of the first network device, the address segment before the address segment corresponding to the network area level indicated by the indication information is supplemented before the variable-length destination address.
  • the variable-length destination address carried in the data packet is 4.1.2
  • the network area level indicated by the indication information is 3
  • the network level address of the first network device is 1.1.2.1.3
  • 1.1.2.1.3 in 1.1.2.1.3
  • the address segment corresponding to area level 3 is 2, then the first two address segments need to be filled before the variable-length destination address, and the destination address is 1.1.4.1.2.
  • the port identifier of the destination port used to send the data packet in the first network device can be queried in the routing table. Then, based on the port identifier of the target port, the network-level address of the above-mentioned second network device can be obtained.
  • the network-level address of the second network device there are several ways to obtain the network-level address of the second network device.
  • the first network device may locally store the port identification of each port of the first network device, and the correspondence relationship between the network-level address of the network device connected to the port corresponding to each port identification. Then, the network-level address corresponding to the port identifier of the target port can be directly obtained by querying the corresponding relationship, that is, the network-level address of the second network device.
  • the three ports of the network device R2, port 1, port 2, and port 3 are respectively connected to the network device R1, the network device R3, and the network device R5 through links. Then, the port ID of port 1 and the network level address of network device R1, the port ID of port 2 and the network level address of network device R3, and the port ID of port 3 and network device R5 can be stored in the network device R2.
  • Network level address Table 1 below exemplarily shows the correspondence between a port identifier and a network-level address.
  • the correspondence relationship may be pre-configured in the first network device by a technician, or may be the correspondence relationship that the first network device actively establishes after being deployed on the hierarchical network.
  • the method of actively establishing the corresponding relationship can be as follows:
  • network device R2 can send a network-level address acquisition request to network device R1 through port 1
  • network device R2 can send a network-level address acquisition request to network device R3 through port 2
  • network device R2 can Send a network-level address acquisition request to the network device R5 through port 3.
  • network device R1 returns the network-level address of network device R1 to port 1
  • network device R3 returns the network-level address of network device R3 to port 2
  • network device R5 returns the network-level address of network device R5 to port 3.
  • the network device R2 determines that the target port is port 1, and then can send a network-level address acquisition request to the network device R1 through port 1, and the network device R1 receives the network-level address acquisition request After the request, the network-level address of the network device R1 is returned to port 1.
  • the first network device can determine whether the variable-length source address and the variable-length destination address meet the address segment supplementary conditions based on the network-level address of the first network device, the indication information, and the network-level address of the second network device, if they meet
  • the address segment supplement condition is to perform address segment supplement processing on the variable-length source address and the variable-length destination address. If the address segment supplement condition is not met, the address segment deletion processing is performed on the variable-length source address and the variable-length destination address based on the network-level address and instruction information of the second network device.
  • the address segment increase and decrease processing of the variable-length source address and the variable-length destination address are respectively described.
  • the indication information includes the first-level identifier.
  • the first-level identifier, and the network-level address of the second network device determine whether the variable-length source address and the variable-length destination address meet the address segment supplementary conditions. If the address segment supplementary conditions are met, then The variable-length source address and the variable-length destination address are processed for address segment supplementation. If the address segment supplement condition is not met, the address segment deletion processing is performed on the variable-length source address and the variable-length destination address based on the network-level address and the first-level identifier of the second network device.
  • the address segments are acquired one by one from the first first address segment in the network-level address of the first network device and the first second address segment in the network-level address of the second network device respectively. Each time a first address segment and a second address segment are acquired, the currently acquired first address segment and the second address segment are compared. When the currently acquired first address segment is different from the currently acquired second address segment, stop acquiring the first address segment and the second address segment, determine that the variable-length source address and the variable-length destination address meet the address segment supplementary conditions, and determine the current acquisition
  • the first address segment corresponds to the network area level X.
  • the Xth address range to the L-1th address range in the network-level address of the first network device are determined as the supplementary address range.
  • variable-length source address and the variable-length destination address After the network area level corresponding to the first address segment currently acquired is L-1, stop acquiring the first address segment and the second address segment, and determine that the variable-length source address and the variable-length destination address do not meet the supplementary conditions of the address segment, and the change is incorrect.
  • the long source address and the variable-length destination address undergo address segment supplement processing. Perform the following address segment deletion method.
  • the address segment deletion processing can be performed on the variable length source address and the variable length destination address.
  • the address segments are acquired one by one from the Lth second address segment in the network-level address of the second network device and the first third address segment in the variable-length destination address respectively.
  • the currently acquired second address segment and the third address segment are compared.
  • stop acquiring the second address segment and the third address segment and determine the first network area level corresponding to the currently acquired second address segment.
  • the network area level corresponding to the currently acquired second address segment is P, stop acquiring the second address segment and the third address segment. If the currently acquired second address segment is the same as the third address segment, determine the currently acquired first address segment.
  • the address segments are acquired one by one from the Lth second address segment in the network-level address of the second network device and the first fourth address segment in the variable-length source address respectively.
  • the currently acquired second address segment and the fourth address segment are compared.
  • stop acquiring the second address segment and the fourth address segment and determine the second network area level corresponding to the currently acquired second address segment.
  • the network area level corresponding to the currently acquired second address segment is P, stop acquiring the second address segment and the fourth address segment. If the currently acquired second address segment is the same as the fourth address segment, determine the currently acquired first address segment.
  • the network level address of network equipment R1 in network area A is 1, the network level addresses of network equipment R2 and R3 in network area B are 1.1, and network equipment R4 in network area C
  • the network level address is 1.2
  • the network level address of network equipment R5 in network area D is 1.1.1
  • the network level address of network equipment R6 and R7 in network area E is 1.2.1
  • the network equipment in network area F The network level address of R8 is 1.1.1.1
  • the network level address of network device R9 in network area G is 2.
  • Source network device is a network device sub-network N1 C1, the network address 1.1.1.1.1. 10, the purpose of the network device is a network device sub-network N3 C2, which is the network address of 1.2.1.2. 10.
  • the transmission path of the data packet is: C1-R8-R3-R9-R7-C2.
  • the source network device C1 can generate a data packet, and the first level identifier in the data packet is 1, that is, the starting address segment indicating the variable-length source address and the variable-length destination address corresponds to the network area level 1.
  • the variable length source address is 1.1.1.1.1. 10
  • the variable length destination address is 1.2.1.2. 10 .
  • C1 can first use the above address segment deletion method to delete the variable-length source address and variable-length destination address. First, query the routing table to determine that the network level address of the next hop of the second network device R8 is 1.1.1.1.
  • R8 queries the routing table and determines that the network level address of the second network device R3 corresponding to the next hop of the data packet is 1.1.
  • the method of address segment supplement is performed first, and it is judged that there is no need to supplement the address segment of the variable-length source address and the variable-length destination address in the data packet. If the address segment deletion method is executed again, it is not necessary to perform the address segment deletion on the variable-length source address and the variable-length destination address in the data packet. Then R8 can directly forward the data packet to R3.
  • the currently acquired first address segment 1 is different from the currently acquired second address segment 2, stop acquiring the first address segment and the second address segment, and determine the network area level 1 corresponding to the currently acquired first address segment.
  • the first address segment to the first address segment in the network-level address of the first network device are determined as the supplementary address segment. That is, the first address segment 1 in the network-level address of the first network device is determined as the supplementary address segment.
  • the variable-length source address obtained after the address supplement processing is 1.1.1.1.1. 10
  • the variable-length destination address after the supplement processing is 1.2.1.2. 10 .
  • R7 queries the routing table and determines that the next hop corresponding to the data packet is the destination network device C2, and then it can be delivered directly, and the data packet is directly forwarded to C2.
  • the second-level identifier, and the network-level address of the second network device Based on the network-level address of the first network device, the second-level identifier, and the network-level address of the second network device, determine whether the variable-length destination address meets the first address segment supplementary condition, and if the variable-length destination address meets the first address segment supplementary condition , Then the address segment supplement processing is performed on the variable-length destination address. If the variable-length source address does not meet the second address segment supplement condition, the address segment deletion processing is performed on the variable-length source address based on the network-level address and the third-level identifier of the second network device.
  • the third-level identifier, and the network-level address of the second network device determine whether the variable-length source address meets the second address segment supplementary condition, and if the variable-length source address meets the second address segment supplementary condition , The address segment supplement processing is performed on the variable-length source address. If the variable-length destination address does not meet the first address segment supplementary condition, the address segment deletion processing is performed on the variable-length destination address based on the network-level address and the second-level identifier of the second network device.
  • the second address segment corresponds to the first network area level Y'. Delete the first address segment in the variable-length destination address to the address segment corresponding to the network area level Y'-1.
  • the smaller number Q'of the number of address segments of the source address and the number of address segments of the network-level address of the second network device is determined.
  • the address segments are acquired one by one from the Nth second address segment in the network-level address of the second network device and the first fourth address segment in the variable-length source address respectively.
  • the currently acquired second address segment and the fourth address segment are compared.
  • stop acquiring the second address segment and the fourth address segment stop acquiring the second address segment and the fourth address segment, and determine the second network area level corresponding to the currently acquired second address segment.
  • the network address of each network device is the same as the above example corresponding to case 1, and the transmission path of the data packet is also: C1-R8-R3-R9-R7 -C2.
  • R3 queries the routing table and determines that the network level address of the second network device R9 corresponding to the next hop of the data packet is 2.
  • Added variable length address field to obtain the destination address is processed 1.2.1.2.
  • variable length source address is the address segment complementing process 1.1.1.1.1. 10.
  • the processing method may be as follows.
  • the variable source address and variable destination address in the data packet are the source address and the destination address when the address segment is not deleted in the source network device.
  • the indication information includes the first-level identifier.
  • the address segments are acquired one by one from the first fifth address segment in the destination address and the first sixth address segment in the source address respectively.
  • the currently acquired fifth address segment and the sixth address segment are compared. If it is still the same when the A-2th is compared, the A-1th address segment and all subsequent address segments in the source address and the destination address are reserved, and the remaining address segments are deleted.
  • the B-th fifth address segment is different from the B-th sixth address segment, where B ⁇ (A-2), then the B-th address segment and all subsequent address segments in the source address and destination address are reserved , The remaining address segments are deleted.
  • a method for data transmission provided by this embodiment of the application, the method may be implemented by a source network device, and the processing flow of the method may include the following steps:
  • Step 501 Obtain the source address and the destination address of the data to be sent.
  • the source network device can obtain the data to be sent corresponding to a certain service.
  • the destination network device that receives the data can be determined, and the network address of the destination network device, that is, the destination address, can be further determined.
  • the network address of the source network device is the source address.
  • Step 502 Based on the source address and the destination address, generate a variable-length source address, a variable-length destination address, and corresponding indication information.
  • variable-length source address is obtained by subtracting part of the front end address segment or not subtracting the address segment from the source address of the data packet
  • variable-length destination address The address is obtained by subtracting part of the front-end address segment or not subtracting the address segment from the destination address of the data packet.
  • the indication information is used to indicate the network corresponding to the start address segment in the variable-length source address and the variable-length destination address. Regional level.
  • the source network device can simplify the source address and destination address before encapsulating the data to obtain the variable-length source address and the variable-length destination address. At the same time, it can also be used to indicate the variable-length source address and the variable-length destination address.
  • the simplification of the source address and the destination address can be different according to the different situations of the instruction information. The following describes the simplification of the source address and the destination address separately for several different situations of the instruction information.
  • Simplify the destination address determine the smaller number A of the number of address segments of the source address and the number of address segments of the destination address.
  • the address segments are acquired one by one from the first fifth address segment in the destination address and the first sixth address segment in the source address respectively.
  • the currently acquired fifth address segment and the sixth address segment are compared.
  • stop acquiring the fifth address segment and the sixth address segment stop acquiring the fifth address segment and the sixth address segment, and determine the third network area level B corresponding to the currently acquired fifth address segment.
  • the network area level corresponding to the currently acquired fifth address segment is A-2, stop acquiring the fifth address segment and the sixth address segment.
  • the data packet carries the variable-length source address, the variable-length destination address, and indication information.
  • the variable-length source address includes part or all of the address segment in the source address
  • the variable-length destination address includes part or all of the address segment in the destination address.
  • the indication information is used to indicate the variable-length source address and the variable-length destination address corresponding to the start address segment.
  • Network area level It can be seen that there is no need to carry the complete destination address and the complete source address in the data packet. After receiving the data packet, the network device will increase or decrease the variable-length source address and the variable-length destination address carried therein, and then send the data packet. Therefore, there is no need to carry a complete destination address and a complete source address in the data packet, which can effectively improve the transmission efficiency of the data packet by the network device.
  • variable length source address may not be carried in the data packet.
  • the processing flow of the method may include the following steps:
  • Step 602 Determine the network-level address of the second network device corresponding to the next hop of the data packet based on the variable-length destination address and the indication information.
  • step 602 For the specific processing manner of step 602, refer to the implementation manner of determining the network-level address of the second network device in step 202.
  • an embodiment of the present application also provides a data transmission device.
  • the device includes: an acquisition module 610, a determination module 620, a processing module 630, and a sending module 640, wherein:
  • the determining module 620 is configured to determine, based on the variable-length destination address and the indication information, the network-level address of the second network device of the next hop corresponding to the data packet. Specifically, the determining function in step 202 above and other implicit steps can be implemented.
  • the sending module 640 is configured to send the processed data packet to the second network device. Specifically, the sending function in step 203 above and other implicit steps can be implemented.
  • variable-length source address and the variable-length destination address meet the address segment reduction condition, and if the address segment reduction condition is met, then Performing address segment deletion processing on the variable-length source address and the variable-length destination address;
  • the indication information includes a second-level identifier and a third-level identifier
  • the second-level identifier is used to indicate the network area level corresponding to the start address segment in the variable-length source address M.
  • the third level identifier is used to indicate the network area level N corresponding to the start address segment in the variable-length destination address;
  • the processing module 630 is used to:
  • variable-length source address satisfies the second address segment supplementary condition, and if the variable-length source address If the long source address satisfies the second address segment supplement condition, then the address segment supplement processing is performed on the variable length source address;
  • the port identifier of the target port used to send the data packet in the first network device is determined, wherein the target port corresponds to the next hop of the data packet Second network device connection;
  • the determining module 720 is configured to:
  • the computer program product includes one or more computer instructions, and when the computer program instructions are loaded and executed on a device, the processes or functions described in the embodiments of the present application are generated in whole or in part.
  • the computer instructions may be stored in a computer-readable storage medium or transmitted from one computer-readable storage medium to another computer-readable storage medium.
  • the computer instructions may be transmitted from a website, computer, server, or data center.

Landscapes

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

Abstract

本申请实施例公开了一种数据传输的方法和装置,属于通信技术领域。所述方法包括:获取数据分组,数据分组中携带有变长源地址、变长目的地址和指示信息,变长源地址包括源地址中部分或全部地址段,变长目的地址包括目的地址中部分或全部地址段,指示信息用于指示变长源地址和所述变长目的地址中的起始地址段对应的网络区域等级。基于变长目的地址和指示信息,确定数据分组对应的下一跳的第二网络设备的网络等级地址。基于第二网络设备的网络等级地址和指示信息,对数据分组中的变长源地址和变长目的地址进行地址段增减处理,并更新指示信息。向第二网络设备发送处理后的数据分组。采用本申请,可以提高网络设备对数据分组的发送效率。

Description

一种数据传输的方法和装置
本申请要求于2020年01月15日提交的申请号为202010043669.4、发明名称为“一种数据传输的方法和装置”的中国专利申请的优先权,其全部内容通过引用结合在本申请中。
技术领域
本申请涉及通信技术领域,特别涉及一种数据传输的方法和装置。
背景技术
在由多个网络区域组成的分级网络中,每个网络区域都有对应的网络区域地址,网络区域地址用于全局唯一标识该网络区域。例如,在分级网络中,最高等级的网络区域A对应的网络区域等级为1,其网络区域地址可以为1,其下一等级的网络区域B对应的网络区域等级为2,其网络区域地址可以为1.1,以此类推。对于每个网络区域,其下属子网中可以包括有网络设备,每个子网有对应的子网标识号,每个网络设备对应有设备号,每个网络设备的网络等级地址为其所属的网络区域的网络区域地址。每个网络设备的网络地址由网络号与设备号的组成,网络号为网络等级地址和子网标识号组成。例如,网络设备X的网络等级地址为1.1,所属子网标识号为2,设备号为 10,则属于网络区域B下属子网的网络设备X的网络地址为1.1.2. 10。网络地址由多个地址段组成,每一个地址段可以使用不同长度的比特串表示。当然,根据需求可以根据网络规划使得一个网络地址中的每个地址段均用相同长度的比特串表示。
在上述分级网络中,源网络设备在向目的网络设备发送数据分组时,需要在该数据分组中携带有源地址和目的地址。其中,源地址为发送该数据分组的源网络设备的网络地址,目的地址为最终接收该数据分组的目的网络设备的网络地址。这样,源网络设备将数据分组按照其对应的路由发送至交换设备后,交换设备即可以根据目的地址查询路由表对该数据分组进行转发。
在实现本申请的过程中,发明人发现现有技术至少存在以下问题:
数据分组在分级网络中传输时,其中携带的源地址和目的地址为源网络设备和目的网络设备的完整的网络地址。在源网络设备和目的网络设备所属的网络区域对应的网络区域等级较低时,数据分组中携带的源网络地址和目的网络地址的长度就会较长,而对于交换设备来说,过长的源地址和目的地址会降低数据分组的发送效率。
发明内容
本申请实施例提供了一种数据传输的方法和装置,可以解决相关技术中转发效率低的问题。所述技术方案如下:
第一方面、提供了一种数据传输的方法,该方法包括:
获取数据分组,其中,所述数据分组中携带有变长源地址、变长目的地址和指示信息, 所述变长源地址包括所述数据分组的源地址中的部分或全部地址段,所述变长目的地址包括所述数据分组的源地址中的部分或全部地址段,所述指示信息用于指示所述变长源地址和所述变长目的地址中的起始地址段对应的网络区域等级;
基于所述变长目的地址和所述指示信息,确定所述数据分组对应的下一跳的第二网络设备的网络等级地址;
基于所述第二网络设备的网络等级地址和所述指示信息,对所述数据分组中的变长源地址和变长目的地址进行地址段增减处理,并对所述数据分组中指示信息进行更新处理,得到处理后的数据分组;
向所述第二网络设备发送所述处理后的数据分组。
在本申请实施例所示的方案中,源地址指源网络设备的完整的网络地址,目的地址指目的网络设备的完整的网络地址。变长源地址的起始地址段指变长源地址中的第一个地址段。变长目的地址的起始地址段指变长目的地址中的第一个地址段。指示信息可以包括有一个等级标识或两个等级标识。指示信息包括有一个等级标识的情况下,该等级标识既用于指示变长源地址中的起始地址段对应的网络区域等级,又用于指示变长目的地址中的起始地址段对应的网络区域等级。指示信息包括有两个等级标识的情况下,其中一个等级标识用于指示变长源地址中的起始地址段对应的网络区域等级,另一个等级标识用于指示变长目的地址中的起始地址段对应的网络区域等级。
在一种可能的实现方式中,所述基于所述第二网络设备的网络等级地址和所述指示信息,对所述数据分组中的变长源地址和变长目的地址进行地址段增减处理,包括:
基于所述第一网络设备的网络等级地址、所述指示信息和所述第二网络设备的网络等级地址,确定所述变长源地址和所述变长目的地址是否满足地址段增补条件,如果满足地址段增补条件,则对所述变长源地址和所述变长目的地址进行地址段增补处理;
如果不满足所述地址段增补条件,基于所述第二网络设备的网络等级地址和所述指示信息,对所述变长源地址和所述变长目的地址进行地址段删减处理。
在本申请实施例所示的方案中,可以先执行地址段增补的方法,如果满足地址段增补条件,则进行地址段增补处理,而不再执行地址段删减的方法。如果不满足地址段增补条件,则执行地址段删减的方法。除此之外,还可以先执行地址段删减的方法,如果满足地址段删减条件,则进行地址段删减处理,而不再执行地址段增补的方法,如果不满足地址段删减条件,则执行地址段增补的方法。或者,还可以并行执行地址段增补的方法和地址段删减的方法。无论采用上述哪种执行顺序,最终对于变长源地址和变长目的地址,均只进行了地址段增补处理或者地址段删减处理或者两个处理均未进行,不会出现既进行了地址段增补处理又进行了地址段删除处理的情况。
在一种可能的实现方式中,所述基于所述第二网络设备的网络等级地址和所述指示信息,对所述数据分组中的变长源地址和变长目的地址进行地址段增减处理,包括:
基于所述第二网络设备的网络等级地址和所述指示信息,确定所述变长源地址和所述变长目的地址是否满足地址段删减条件,如果满足所述地址段删减条件,则对所述变长源地址和所述变长目的地址进行地址段删减处理;
如果不满足所述地址段删减条件,基于第一网络设备的网络等级地址、所述指示信息和所述第二网络设备的网络等级地址,对所述变长源地址和所述变长目的地址进行地址段增补 处理。
在一种可能的实现方式中,所述指示信息包括第一等级标识,所述第一等级标识用于指示所述变长源地址和所述变长目的地址中的起始地址段对应的网络区域等级L;
所述基于所述第一网络设备的网络等级地址、所述指示信息和所述第二网络设备的网络等级地址,确定所述变长源地址和所述变长目的地址是否满足地址段增补条件,如果满足地址段增补条件,则对所述变长源地址和所述变长目的地址进行地址段增补处理,包括:
基于所述第一网络设备的网络等级地址、所述第一等级标识和所述第二网络设备的网络等级地址,确定所述变长源地址和所述变长目的地址是否满足地址段增补条件,如果满足地址段增补条件,则对所述变长源地址和所述变长目的地址进行地址段增补处理;
所述如果不满足所述地址段增补条件,基于所述第二网络设备的网络等级地址和所述指示信息,对所述变长源地址和所述变长目的地址进行地址段删减处理,包括:
如果不满足所述地址段增补条件,则基于所述第二网络设备的网络等级地址和所述第一等级标识,对所述变长源地址和所述变长目的地址进行地址段删减处理。
在本申请实施例所示的方案中,在数据分组中携带的指示信息可以包括第一等级标识,该第一等级标识既用于指示变长源地址中的起始地址段对应的网络区域等级,又用于指示变长目的地址中的起始地址段对应的网络区域等级。每个网络区域对应有唯一的等级标识,例如,等级标识可以为网络区域等级的级数,如网络区域等级为1,那么,其等级标识即可以为1。
在一种可能的实现方式中,所述基于所述第一网络设备的网络等级地址、所述第一等级标识和所述第二网络设备的网络等级地址,确定所述变长源地址和所述变长目的地址是否满足地址段增补条件,如果满足地址段增补条件,则对所述变长源地址和所述变长目的地址进行地址段增补处理,包括:
分别从所述第一网络设备的网络等级地址中的第1个第一地址段和所述第二网络设备的网络等级地址中的第1个第二地址段开始向后逐个获取地址段;
每获取一个第一地址段和一个第二地址段,将当前获取的第一地址段和第二地址段进行比较;
当当前获取的第一地址段与当前获取的第二地址段不同时,停止获取所述第一地址段和第二地址段,确定当前获取的第一地址段对应的网络区域等级X;
将所述第一网络设备的网络等级地址中的第X个地址段到第L-1个地址段确定为增补地址段,并添加至所述变长源地址和所述变长目的地址的前端。
在本申请实施例所示的方案中,第一地址段指第一网络设备的网络等级地址中的地址段,第二地址段指第二网络设备中的网络等级地址中的地址段。
在一种可能的实现方式中,所述如果不满足所述地址段增补条件,则基于所述第二网络设备的网络等级地址和所述第一等级标识,对所述变长源地址和所述变长目的地址进行地址段删减处理,包括:
在当前获取的第一地址段对应的网络区域等级为L-1之后,停止获取所述第一地址段和所述第二地址段,不对所述变长源地址和所述变长目的地址进行地址段增补处理;
确定所述目的地址的地址段的数目和所述第二网络设备的网络等级地址的地址段的数目中的较小数目P;
分别从所述第二网络设备的网络等级地址中的第L个第二地址段和所述变长目的地址中的第1个第三地址段开始向后逐个获取地址段;
每获取一个第二地址段和一个第三地址段,将当前获取的第二地址段和第三地址段进行比较;
当当前获取的第二地址段与当前获取的第三地址段不同时,停止获取所述第二地址段和所述第三地址段,确定当前获取的第二地址段对应的第一网络区域等级;
在当前获取的第二地址段对应的网络区域等级为P之后,停止获取所述第二地址段和所述第三地址段,如果当前获取的所述第二地址段和所述第三地址段相同,则确定当前获取的第二地址段的后一个地址段对应的第一网络区域等级;
确定所述源地址的地址段的数目和所述第二网络设备的网络等级地址的地址段的数目中的较小数目Q;
分别从所述第二网络设备的网络等级地址中的第L个第二地址段和所述变长源地址中的第1个第四地址段开始向后逐个获取地址段;
每获取一个第二地址段和一个第四地址段,将当前获取的第二地址段和第四地址段进行比较;
当当前获取的第二地址段与当前获取的第四地址段不同时,停止获取所述第二地址段和所述第四地址段,确定当前获取的第二地址段对应的第二网络区域等级;
在当前获取的第二地址段对应的网络区域等级为P之后,停止获取所述第二地址段和所述第四地址段,如果当前获取的所述第二地址段和所述第四地址段相同,则确定当前获取的第二地址段的后一个地址段对应的第二网络区域等级;
确定所述第一网络区域等级和所述第二网络区域等级中的较小网络区域等级Y;
将所述变长源地址和所述变长目的地址中的第1个地址段到网络区域等级Y-1对应的地址段进行删减。
在本申请实施例所示的方案中,第三地址段指变长目的地址中的地址段,第四地址段指变长源地址中的地址段。
在一种可能的实现方式中,所述指示信息包括第二等级标识和第三等级标识,所述第二等级标识用于指示所述变长源地址中的起始地址段对应的网络区域等级M,所述第三等级标识用于指示所述变长目的地址中的起始地址段对应的网络区域等级N;
所述基于所述第一网络设备的网络等级地址、所述指示信息和所述第二网络设备的网络等级地址,则对所述变长源地址和所述变长目的地址进行地址段增补处理,包括:
基于所述第一网络设备的网络等级地址、所述第二等级标识和所述第二网络设备的网络等级地址,确定所述变长目的地址是否满足第一地址段增补条件,如果所述变长目的地址满足所述第一地址段增补条件,则对所述变长目的地址进行地址段增补处理;
基于所述第一网络设备的网络等级地址、所述第三等级标识和所述第二网络设备的网络等级地址,确定所述变长源地址是否满足第二地址段增补条件,如果所述变长源地址满足所述第二地址段增补条件,则对所述变长源地址进行地址段增补处理;
所述如果不满足所述地址段增补条件,则基于所述第二网络设备的网络等级地址和所述指示信息,对所述变长源地址和所述变长目的地址进行地址段删减处理,包括:
如果所述变长目的地址不满足所述第一地址段增补条件,则基于所述第二网络设备的网 络等级地址和所述第二等级标识,对所述变长目的地址进行地址段删减处理;
如果所述变长源地址不满足所述第二地址段增补条件,则基于所述第二网络设备的网络等级地址和所述第三等级标识,对所述变长源地址进行地址段删减处理。
在本申请实施例所示的方案中,在数据分组中携带的指示信息可以包括第二等级标识和第三等级指示信息。该第二等级标识用于指示变长目的地址中的起始地址段对应的网络区域等级。第三等级标识用于指示变长源地址中的起始地址段对应的网络区域等级。同样的,每个网络区域对应有唯一的等级标识,例如,等级标识可以为网络区域等级的级数,如网络区域等级为1,那么,其等级标识即可以为1。则对于变长源地址和变长目的地址的地址段增减处理可以分别执行,二者的地址段增减处理可以互不影响,即变长源地址和变长目的地址的地址段增减可以更加灵活。
在一种可能的实现方式中,所述基于所述第一网络设备的网络等级地址、所述第二等级标识和所述第二网络设备的网络等级地址,确定所述变长目的地址是否满足第一地址段增补条件,如果所述变长目的地址满足所述第一地址段增补条件,则对所述变长目的地址进行地址段增补处理,包括:
分别从所述第一网络设备的网络等级地址中的第1个第一地址段和所述第二网络设备的网络等级地址中的第1个第二地址段开始向后逐个获取地址段;
每获取一个第一地址段和一个第二地址段,将当前获取的第一地址段和第二地址段进行比较;
当当前获取的第一地址段与当前获取的第二地址段不同时,停止获取所述第一地址段和第二地址段,确定当前获取的第一地址段对应的网络区域等级X′;
将所述第一网络设备的网络等级地址中的第X′个地址段到第M-1个地址段确定为增补地址段,并添加至所述变长目的地址的前端;
所述基于所述第一网络设备的网络等级地址、所述第三等级标识和所述第二网络设备的网络等级地址,确定所述变长源地址是否满足第二地址段增补条件,如果所述变长源地址满足所述第二地址段增补条件,则对所述变长源地址进行地址段增补处理,包括:
分别从所述第一网络设备的网络等级地址中的第1个第一地址段和所述第二网络设备的网络等级地址中的第1个第二地址段开始向后逐个获取地址段;
每获取一个第一地址段和一个第二地址段,将当前获取的第一地址段和第二地址段进行比较;
当当前获取的第一地址段与当前获取的第二地址段不同时,停止获取所述第一地址段和第二地址段,确定当前获取的第一地址段对应的网络区域等级X″;
将所述第一网络设备的网络等级地址中的第X″个地址段到第N-1个地址段确定为增补地址段,并添加至所述变长源地址的前端。
在一种可能的实现方式中,所述如果所述变长目的地址不满足所述第一地址段增补条件,则基于所述第二网络设备的网络等级地址和所述第二等级标识,对所述变长目的地址进行地址段删减处理,包括:
在当前获取的第一地址段对应的网络区域等级为M-1之后,停止获取所述第一地址段和所述第二地址段,不对所述变长目的地址进行地址段增补处理;
确定所述目的地址的地址段的数目和所述第二网络设备的网络等级地址的地址段的数目 中的较小数目P′;
分别从所述第二网络设备的网络等级地址中的第M个第二地址段和所述变长目的地址中的第1个第三地址段开始向后逐个获取地址段;
每获取一个第二地址段和一个第三地址段,将当前获取的第二地址段和第三地址段进行比较;
当当前获取的第二地址段与当前获取的第三地址段不同时,停止获取所述第二地址段和所述第三地址段,确定当前获取的第二地址段对应的第一网络区域等级Y′;
在获取的第二地址段对应的网络区域等级为P′之后,停止获取所述第二地址段和所述第三地址段,如果当前获取的所述第二地址段和所述第三地址段相同,则确定当前获取的第二地址段的后一个地址段对应的第一网络区域等级Y′;
将所述变长目的地址中的第1个地址段到网络区域等级Y′-1对应的地址段进行删减;
所述如果所述变长源地址不满足所述第二地址段增补条件,则基于所述第二网络设备的网络等级地址和所述第三等级标识,对所述变长源地址进行地址段删减处理,包括:
在当前获取的第一地址段对应的网络区域等级为N-1之后,停止获取所述第一地址段和所述第二地址段,不对所述变长目的地址进行地址段增补处理;
确定所述目的地址的地址段的数目和所述第二网络设备的网络等级地址的地址段的数目中的较小数目Q′;
分别从所述第二网络设备的网络等级地址中的第N个第二地址段和所述变长目的地址中的第1个第三地址段开始向后逐个获取地址段;
每获取一个第二地址段和一个第三地址段,将当前获取的第二地址段和第三地址段进行比较;
当当前获取的第二地址段与当前获取的第三地址段不同时,停止获取所述第二地址段和所述第四地址段,确定当前获取的第二地址段对应的第二网络区域等级;
在获取的第二地址段对应的网络区域等级为Q′之后,停止获取所述第二地址段和所述第四地址段,如果当前获取的所述第二地址段和所述第四地址段相同,则确定当前获取的第二地址段的后一个地址段对应的第二网络区域等级Y″;
将所述变长源地址中的第1个地址段到网络区域等级Y″-1对应的地址段进行删减。
在一种可能的实现方式中,所述基于所述变长目的地址和所述指示信息,确定所述数据分组对应的下一跳的第二网络设备的网络等级地址,包括:
在所述第一网络设备的网络等级地址中,确定出所述指示信息所指示的网络区域等级对应的地址段之前的目的地址段;
将所述目的地址段添加至所述变长目的地址的前端,得到所述目的地址;
基于所述目的地址和存储的路由表,确定所述第一网络设备中用于发送所述数据分组的目标端口的端口标识,其中,所述目标端口与所述数据分组对应的下一跳的第二网络设备连接;
基于所述目标端口的端口标识,获取所述第二网络设备的网络等级地址;
所述向所述第二网络设备发送所述处理后的数据分组,包括:
通过所述目标端口,向所述第二网络设备发送所述处理后的数据分组。
在本申请实施例所示的方案中,第一网络设备可以根据指示信息,判断变长目的地址是 否需要补齐。如果指示信息指示变长目的地址中的起始地址段对应的网络区域等级为1,则无需对变长目的地址进行补齐。如果指示信息指示变长目的地址中的起始地址段对应的网络区域等级不是1,则需要对变长目的地址进行补齐,得到目的地址。
在对变长目的地址进行补齐时,可以根据指示信息和第一网络设备的网络等级地址实现。即,将第一网络设备的网络等级地址中,该指示信息所指示的网络区域等级对应的地址段之前的地址段,补齐到变长目的地址之前。
然后,可以使用目的地址,查询路由表,得到用于转发该数据分组的目标端口的端口标识。之后,可以根据该端口标识,确定出与目标端口直连的网络设备的网络等级地址。该与目标端口直连的网络设备即为该数据分组对应的下一跳的第二网络设备。
在一种可能的实现方式中,所述基于所述目标端口,获取所述第二网络设备的网络等级地址,包括:
在存储的所述第一网络设备的各端口的端口标识,与每个端口标识对应的端口所连接的网络设备的网络等级地址的对应关系中,获取所述目标端口的端口标识对应的网络等级地址,作为所述第二网络设备的网络等级地址。
在本申请实施例所示的方案中,第一网络设备存储的端口标识与每个端口标识对应的端口所连接的网络设备的网络等级地址的对应关系,可以由技术人员配置在第一网络设备中,也可以由第一网络设备通过如下方法主动建立该对应关系。
对于第一网络设备的每个端口,通过该端口向与该端口连接的网络设备发送网络等级地址获取指令,网络设备接收到网络等级地址获取指令后,向该端口返回自己的网络等级地址。第一网络设备可以将接收到的网络等级地址,与接收该网络等级地址的端口的端口标识建立对应关系,并进行存储。
采用上述本地存储对应关系的方法,可以时网络设备在发送数据分组过程中,无需临时确定第二网络设备的网络等级地址。提高了数据分组发送的效率。
在一种可能的实现方式中,所述基于所述目标端口,获取所述第二网络设备的网络等级地址,包括:
通过所述目标端口,向所述第二网络设备发送网络等级地址获取请求
接收所述第二网络设备返回的所述第二网络设备的网络等级地址。
第二方面、提供了一种数据传输的方法,该方法应用于源网络设备,所述方法包括:
获取待发送的数据的源地址和目的地址;
基于所述源地址和目的地址,生成变长源地址、变长目的地址和对应的指示信息,其中,所述变长源地址是在所述数据分组的源地址中删减前端的部分地址段或不删减地址段得到的,所述变长目的地址是在所述数据分组的目的地址中删减前端的部分地址段或不删减地址段得到的,所述指示信息用于指示所述变长源地址和所述变长目的地址中的起始地址段对应的网络区域等级;
生成携带有所述数据、所述变长源地址、所述变长目的地址和所述指示信息的数据分组;
基于所述目的地址,发送所述数据分组。
在一种可能的实现方式中,所述指示信息包括第一等级标识,所述第一等级标识用于指示所述变长源地址和所述变长目的地址中的起始地址段对应的网络区域等级;
所述基于所述源地址和目的地址,生成变长源地址、变长目的地址和对应的指示信息, 包括:
基于所述源地址和目的地址,生成变长源地址、变长目的地址和对应的第一等级标识。
在一种可能的实现方式中,所述处理模块,用于:
基于所述第二网络设备的网络等级地址和所述指示信息,确定所述变长源地址和所述变长目的地址是否满足地址段删减条件,如果满足所述地址段删减条件,则对所述变长源地址和所述变长目的地址进行地址段删减处理;
如果不满足所述地址段删减条件,基于第一网络设备的网络等级地址、所述指示信息和所述第二网络设备的网络等级地址,对所述变长源地址和所述变长目的地址进行地址段增补处理。
在一种可能的实现方式中,所述基于所述源地址和目的地址,生成变长源地址、变长目的地址和对应的第一等级标识,包括:
确定所述源地址的地址段的数目和所述目的地址的地址段的数目中的较小数目A;
分别从所述目的地址中的第1个第五地址段和源地址中的第1个第六地址段开始向后逐个获取地址段;
每获取一个第五地址段和一个第六地址段,将当前获取的第五地址段和第六地址段进行比较;
当当前获取的第五地址段和第六地址段不同时,停止获取所述第五地址段和所述第六地址段,确定当前获取的第五地址段对应的第三网络区域等级B;
在当前获取的第五地址段对应的网络区域等级为A-2之后,停止获取所述第五地址段和所述第六地址段,如果当前获取的所述第五地址段和所述第六地址段相同,则确定当前获取的第五地址段的后一个地址段对应的第三网络区域等级B;
将所述源地址和所述目的地址中的第1个地址段到网络区域等级B-1对应的地址段进行删减,得到变长源地址和变长目的地址,并确定网络区域等级B对应的第一等级标识。
在一种可能的实现方式中,所述指示信息包括第二等级标识和第三等级标识,所述第二等级标识用于指示所述变长源地址中的起始地址段对应的网络区域等级,所述第三等级标识用于指示所述变长目的地址中的起始地址段对应的网络区域等级;
所述基于所述源地址和目的地址,生成变长源地址、变长目的地址和对应的指示信息,包括:
基于所述源地址,生成变长源地址和对应的第三等级标识;
基于所述源地址和所述目的地址,生成变变长目的地址和对应的第二等级标识。
在一种可能的实现方式中,所述基于所述源地址,生成变长源地址和对应的第三等级标识,包括:
将所述源地址中的除最后两个地址段之外的地址段,进行删减,得到变长源地址,并确定所述变长源地址中的起始地址段对应的第三等级标识;
所述基于所述源地址和所述目的地址,生成变变长目的地址和对应的第三等级标识,包括:
确定所述源地址的地址段的数目和所述目的地址的地址段的数目中的较小数目A;
分别从所述目的地址中的第1个第五地址段和源地址中的第1个第六地址段开始向后逐个获取地址段;
每获取一个第五地址段和一个第六地址段,将当前获取的第五地址段和第六地址段进行比较;
当当前获取的第五地址段和第六地址段不同时,停止获取所述第五地址段和所述第六地址段,确定当前获取的第五地址段对应的第三网络区域等级B;
在当前获取的第五地址段对应的网络区域等级为A-2之后,停止获取所述第五地址段和所述第六地址段,如果当前获取的所述第五地址段和所述第六地址段相同,则确定当前获取的第五地址段的后一个地址段对应的第三网络区域等级B;
将所述源地址和所述目的地址中的第1个地址段到网络区域等级B-1对应的地址段进行删减,得到变长目的地址,并确定所述变长目的地址中的起始地址段对应的第二等级标识。
第三方面、提供了一种数据传输的方法,所述方法应用于第一网络设备,所述方法包括:
获取数据分组,其中,所述数据分组中携带有变长目的地址和指示信息,所述变长目的地址包括所述数据分组的目的地址中的部分或全部地址段,所述指示信息用于指示所述变长目的地址中的起始地址段对应的网络区域等级;
基于所述变长目的地址和所述指示信息,确定所述数据分组对应的下一跳的第二网络设备的网络等级地址;
基于所述第二网络设备的网络等级地址和所述指示信息,对所述数据分组中的变长目的地址进行地址段增减处理,并对所述数据分组中指示信息进行更新处理,得到处理后的数据分组;
向所述第二网络设备发送所述处理后的数据分组。
在一种可能的实现方式中,所述基于所述第二网络设备的网络等级地址和所述指示信息,对所述数据分组中的变长目的地址进行地址段增减处理,包括:
基于所述第一网络设备的网络等级地址、所述指示信息和所述第二网络设备的网络等级地址,确定所述变长目的地址是否满足地址段增补条件,如果满足所述地址段增补条件,则对所述变长目的地址进行地址段增补处理;
如果不满足所述地址段增补条件,基于所述第二网络设备的网络等级地址和所述指示信息,对所述变长目的地址进行地址段删减处理。
在一种可能的实现方式中,所述基于所述第二网络设备的网络等级地址和所述指示信息,对所述数据分组中的变长目的地址进行地址段增减处理,包括:
基于所述第二网络设备的网络等级地址和所述指示信息,确定所述变长目的地址是否满足地址段删减条件,如果满足所述地址段删减条件,则对所述变长目的地址进行地址段删减处理;
如果不满足所述地址段删减条件,基于第一网络设备的网络等级地址、所述指示信息和所述第二网络设备的网络等级地址,对所述变长目的地址进行地址段增补处理。
在一种可能的实现方式中,所述指示信息用于指示所述变长目的地址中的起始地址段对应的网络区域等级L,所述基于所述第一网络设备的网络等级地址、所述指示信息和所述第二网络设备的网络等级地址,确定所述变长目的地址是否满足地址段增补条件,如果满足地址段增补条件,则对所述变长目的地址进行地址段增补处理,包括:
分别从所述第一网络设备的网络等级地址中的第1个第一地址段和所述第二网络设备的网络等级地址中的第1个第二地址段开始向后逐个获取地址段;
每获取一个第一地址段和一个第二地址段,将当前获取的第一地址段和第二地址段进行比较;
当当前获取的第一地址段与当前获取的第二地址段不同时,停止获取所述第一地址段和第二地址段,确定当前获取的第一地址段对应的网络区域等级X;
将所述第一网络设备的网络等级地址中的第X个地址段到第L-1个地址段确定为增补地址段,并添加至所述变长目的地址的前端。
在一种可能的实现方式中,所述指示信息用于指示所述变长目的地址中的起始地址段对应的网络区域等级L,所述如果不满足所述地址段增补条件,则基于所述第二网络设备的网络等级地址和所述指示信息,对所述变长源地址和所述变长目的地址进行地址段删减处理,包括:
在当前获取的第一地址段对应的网络区域等级为L-1之后,停止获取所述第一地址段和所述第二地址段,不对所述变长目的地址进行地址段增补处理;
确定所述目的地址的地址段的数目和所述第二网络设备的网络等级地址的地址段的数目中的较小数目P;
分别从所述第二网络设备的网络等级地址中的第L个第二地址段和所述变长目的地址中的第1个第三地址段开始向后逐个获取地址段;
每获取一个第二地址段和一个第三地址段,将当前获取的第二地址段和第三地址段进行比较;
当当前获取的第二地址段与当前获取的第三地址段不同时,停止获取所述第二地址段和所述第三地址段,确定当前获取的第二地址段对应的第一网络区域等级;
在当前获取的第二地址段对应的网络区域等级为P之后,停止获取所述第二地址段和所述第三地址段,如果当前获取的所述第二地址段和所述第三地址段相同,则确定当前获取的第二地址段的后一个地址段对应的第一网络区域等级Y;
将所述变长目的地址中的第1个地址段到网络区域等级Y-1对应的地址段进行删减。
在一种可能的实现方式中,所述基于所述变长目的地址和所述指示信息,确定所述数据分组对应的下一跳的第二网络设备的网络等级地址,包括:
在所述第一网络设备的网络等级地址中,确定出所述指示信息所指示的网络区域等级对应的地址段之前的目的地址段;
将所述目的地址段添加至所述变长目的地址的前端,得到所述目的地址;
基于所述目的地址和存储的路由表,确定所述第一网络设备中用于发送所述数据分组的目标端口的端口标识,其中,所述目标端口与所述数据分组对应的下一跳的第二网络设备连接;
基于所述目标端口的端口标识,获取所述第二网络设备的网络等级地址;
所述向所述第二网络设备发送所述处理后的数据分组,包括:
通过所述目标端口,向所述第二网络设备发送所述处理后的数据分组。
在一种可能的实现方式中,所述基于所述目标端口,获取所述第二网络设备的网络等级地址,包括:
在存储的所述第一网络设备的各端口的端口标识,与每个端口标识对应的端口所连接的网络设备的网络等级地址的对应关系中,获取所述目标端口的端口标识对应的网络等级地址, 作为所述第二网络设备的网络等级地址。
在一种可能的实现方式中,所述基于所述目标端口,获取所述第二网络设备的网络等级地址,包括:
通过所述目标端口,向所述第二网络设备发送网络等级地址获取请求
接收所述第二网络设备返回的所述第二网络设备的网络等级地址。
第四方面、提供了一种数据传输的装置,所述装置包括:
获取模块,用于获取数据分组,其中,所述数据分组中携带有变长源地址、变长目的地址和指示信息,所述变长源地址包括所述数据分组的源地址中的部分或全部地址段,所述变长目的地址包括所述数据分组的源地址中部分或全部地址段,所述指示信息用于指示所述变长源地址和所述变长目的地址中的起始地址段对应的网络区域等级;
确定模块,用于基于所述变长目的地址和所述指示信息,确定所述数据分组对应的下一跳的第二网络设备的网络等级地址;
处理模块,用于基于所述第二网络设备的网络等级地址和所述指示信息,对所述数据分组中的变长源地址和变长目的地址进行地址段增减处理,并对所述数据分组中指示信息进行更新处理,得到处理后的数据分组;
发送模块,用于向所述第二网络设备发送所述处理后的数据分组。
在一种可能的实现方式中,所述处理模块,用于:
基于所述第一网络设备的网络等级地址、所述指示信息和所述第二网络设备的网络等级地址,确定所述变长源地址和所述变长目的地址是否满足地址段增补条件,如果满足地址段增补条件,则对所述变长源地址和所述变长目的地址进行地址段增补处理;
如果不满足所述地址段增补条件,基于所述第二网络设备的网络等级地址和所述指示信息,对所述变长源地址和所述变长目的地址进行地址段删减处理。
在一种可能的实现方式中,所述指示信息包括第一等级标识,所述第一等级标识用于指示所述变长源地址和所述变长目的地址中的起始地址段对应的网络区域等级L;
所述处理模块,用于:
基于所述第一网络设备的网络等级地址、所述第一等级标识和所述第二网络设备的网络等级地址,确定所述变长源地址和所述变长目的地址是否满足地址段增补条件,如果满足地址段增补条件,则对所述变长源地址和所述变长目的地址进行地址段增补处理;
如果不满足所述地址段增补条件,则基于所述第二网络设备的网络等级地址和所述第一等级标识,对所述变长源地址和所述变长目的地址进行地址段删减处理。
在一种可能的实现方式中,所述处理模块,用于:
分别从所述第一网络设备的网络等级地址中的第1个第一地址段和所述第二网络设备的网络等级地址中的第1个第二地址段开始向后逐个获取地址段;
每获取一个第一地址段和一个第二地址段,将当前获取的第一地址段和第二地址段进行比较;
当当前获取的第一地址段与当前获取的第二地址段不同时,停止获取所述第一地址段和第二地址段,确定当前获取的第一地址段对应的网络区域等级X;
将所述第一网络设备的网络等级地址中的第X个地址段到第L-1个地址段确定为增补地址段,并添加至所述变长源地址和所述变长目的地址的前端。
在一种可能的实现方式中,所述处理模块,用于:
在当前获取的第一地址段对应的网络区域等级为L-1之后,停止获取所述第一地址段和所述第二地址段,不对所述变长源地址和所述变长目的地址进行地址段增补处理;
确定所述目的地址的地址段的数目和所述第二网络设备的网络等级地址的地址段的数目中的较小数目P;
分别从所述第二网络设备的网络等级地址中的第L个第二地址段和所述变长目的地址中的第1个第三地址段开始向后逐个获取地址段;
每获取一个第二地址段和一个第三地址段,将当前获取的第二地址段和第三地址段进行比较;
当当前获取的第二地址段与当前获取的第三地址段不同时,停止获取所述第二地址段和所述第三地址段,确定当前获取的第二地址段对应的第一网络区域等级;
在当前获取的第二地址段对应的网络区域等级为P之后,停止获取所述第二地址段和所述第三地址段,如果当前获取的所述第二地址段和所述第三地址段相同,则确定当前获取的第二地址段的后一个地址段对应的第一网络区域等级;
确定所述源地址的地址段的数目和所述第二网络设备的网络等级地址的地址段的数目中的较小数目Q;
分别从所述第二网络设备的网络等级地址中的第L个第二地址段和所述变长源地址中的第1个第四地址段开始向后逐个获取地址段;
每获取一个第二地址段和一个第四地址段,将当前获取的第二地址段和第四地址段进行比较;
当当前获取的第二地址段与当前获取的第四地址段不同时,停止获取所述第二地址段和所述第四地址段,确定当前获取的第二地址段对应的第二网络区域等级;
在当前获取的第二地址段对应的网络区域等级为P之后,停止获取所述第二地址段和所述第四地址段,如果当前获取的所述第二地址段和所述第四地址段相同,则确定当前获取的第二地址段的后一个地址段对应的第二网络区域等级;
确定所述第一网络区域等级和所述第二网络区域等级中的较小网络区域等级Y;
将所述变长源地址和所述变长目的地址中的第1个地址段到网络区域等级Y-1对应的地址段进行删减。
在一种可能的实现方式中,所述指示信息包括第二等级标识和第三等级标识,所述第二等级标识用于指示所述变长源地址中的起始地址段对应的网络区域等级M,所述第三等级标识用于指示所述变长目的地址中的起始地址段对应的网络区域等级N;
所述处理模块,用于:
基于所述第一网络设备的网络等级地址、所述第二等级标识和所述第二网络设备的网络等级地址,确定所述变长目的地址是否满足第一地址段增补条件,如果所述变长目的地址满足所述第一地址段增补条件,则对所述变长目的地址进行地址段增补处理;
基于所述第一网络设备的网络等级地址、所述第三等级标识和所述第二网络设备的网络等级地址,确定所述变长源地址是否满足第二地址段增补条件,如果所述变长源地址满足所述第二地址段增补条件,则对所述变长源地址进行地址段增补处理;
如果所述变长目的地址不满足所述第一地址段增补条件,则基于所述第二网络设备的网 络等级地址和所述第二等级标识,对所述变长目的地址进行地址段删减处理;
如果所述变长源地址不满足所述第二地址段增补条件,则基于所述第二网络设备的网络等级地址和所述第三等级标识,对所述变长源地址进行地址段删减处理。
在一种可能的实现方式中,所述处理模块,用于:
分别从所述第一网络设备的网络等级地址中的第1个第一地址段和所述第二网络设备的网络等级地址中的第1个第二地址段开始向后逐个获取地址段;
每获取一个第一地址段和一个第二地址段,将当前获取的第一地址段和第二地址段进行比较;
当当前获取的第一地址段与当前获取的第二地址段不同时,停止获取所述第一地址段和第二地址段,确定当前获取的第一地址段对应的网络区域等级X′;
将所述第一网络设备的网络等级地址中的第X′个地址段到第M-1个地址段确定为增补地址段,并添加至所述变长目的地址的前端;
分别从所述第一网络设备的网络等级地址中的第1个第一地址段和所述第二网络设备的网络等级地址中的第1个第二地址段开始向后逐个获取地址段;
每获取一个第一地址段和一个第二地址段,将当前获取的第一地址段和第二地址段进行比较;
当当前获取的第一地址段与当前获取的第二地址段不同时,停止获取所述第一地址段和第二地址段,确定当前获取的第一地址段对应的网络区域等级X″;
将所述第一网络设备的网络等级地址中的第X″个地址段到第N-1个地址段确定为增补地址段,并添加至所述变长源地址的前端。
在一种可能的实现方式中,所述处理模块,用于:
在当前获取的第一地址段对应的网络区域等级为M-1之后,停止获取所述第一地址段和所述第二地址段,不对所述变长目的地址进行地址段增补处理;
确定所述目的地址的地址段的数目和所述第二网络设备的网络等级地址的地址段的数目中的较小数目P′;
分别从所述第二网络设备的网络等级地址中的第M个第二地址段和所述变长目的地址中的第1个第三地址段开始向后逐个获取地址段;
每获取一个第二地址段和一个第三地址段,将当前获取的第二地址段和第三地址段进行比较;
当当前获取的第二地址段与当前获取的第三地址段不同时,停止获取所述第二地址段和所述第三地址段,确定当前获取的第二地址段对应的第一网络区域等级Y′;
在获取的第二地址段对应的网络区域等级为P′之后,停止获取所述第二地址段和所述第三地址段,如果当前获取的所述第二地址段和所述第三地址段相同,则确定当前获取的第二地址段的后一个地址段对应的第一网络区域等级Y′;
将所述变长目的地址中的第1个地址段到网络区域等级Y′-1对应的地址段进行删减;
所述如果所述变长源地址不满足所述第二地址段增补条件,则基于所述第二网络设备的网络等级地址和所述第三等级标识,对所述变长源地址进行地址段删减处理,包括:
在当前获取的第一地址段对应的网络区域等级为N-1之后,停止获取所述第一地址段和所述第二地址段,不对所述变长目的地址进行地址段增补处理;
确定所述目的地址的地址段的数目和所述第二网络设备的网络等级地址的地址段的数目中的较小数目Q′;
分别从所述第二网络设备的网络等级地址中的第N个第二地址段和所述变长目的地址中的第1个第三地址段开始向后逐个获取地址段;
每获取一个第二地址段和一个第三地址段,将当前获取的第二地址段和第三地址段进行比较;
当当前获取的第二地址段与当前获取的第三地址段不同时,停止获取所述第二地址段和所述第四地址段,确定当前获取的第二地址段对应的第二网络区域等级;
在获取的第二地址段对应的网络区域等级为Q′之后,停止获取所述第二地址段和所述第四地址段,如果当前获取的所述第二地址段和所述第四地址段相同,则确定当前获取的第二地址段的后一个地址段对应的第二网络区域等级Y″;
将所述变长源地址中的第1个地址段到网络区域等级Y″-1对应的地址段进行删减。
在一种可能的实现方式中,所述确定模块,用于:
在所述第一网络设备的网络等级地址中,确定出所述指示信息所指示的网络区域等级对应的地址段之前的目的地址段;
将所述目的地址段添加至所述变长目的地址的前端,得到所述目的地址;
基于所述目的地址和存储的路由表,确定所述第一网络设备中用于发送所述数据分组的目标端口的端口标识,其中,所述目标端口与所述数据分组对应的下一跳的第二网络设备连接;
基于所述目标端口的端口标识,获取所述第二网络设备的网络等级地址;
所述发送模块,用于:
通过所述目标端口,向所述第二网络设备发送所述处理后的数据分组。
在一种可能的实现方式中,所述确定模块,用于:
在存储的所述第一网络设备的各端口的端口标识,与每个端口标识对应的端口所连接的网络设备的网络等级地址的对应关系中,获取所述目标端口的端口标识对应的网络等级地址,作为所述第二网络设备的网络等级地址。
在一种可能的实现方式中,所述确定模块,用于:
通过所述目标端口,向所述第二网络设备发送网络等级地址获取请求
接收所述第二网络设备返回的所述第二网络设备的网络等级地址。
第五方面、提供了一种数据传输的装置,所述装置包括:
获取模块,用于获取待发送的数据的源地址和目的地址;
确定模块,用于基于所述源地址和目的地址,生成变长源地址、变长目的地址和对应的指示信息,其中,所述变长源地址是在所述数据分组的源地址中删减前端的部分地址段或不删减地址段得到的,所述变长目的地址是在所述数据分组的目的地址中删减前端的部分地址段或不删减地址段得到的,所述指示信息用于指示所述变长源地址和所述变长目的地址中的起始地址段对应的网络区域等级;
生成模块,用于生成携带有所述数据、所述变长源地址、所述变长目的地址和所述指示信息的数据分组;
发送模块,用于基于所述目的地址,发送所述数据分组。
在一种可能的实现方式中,所述指示信息包括第一等级标识,所述第一等级标识用于指示所述变长源地址和所述变长目的地址中的起始地址段对应的网络区域等级;
所述确定模块,用于:
基于所述源地址和目的地址,生成变长源地址、变长目的地址和对应的第一等级标识。
在一种可能的实现方式中,所述确定模块,用于:
确定所述源地址的地址段的数目和所述目的地址的地址段的数目中的较小数目A;
分别从所述目的地址中的第1个第五地址段和源地址中的第1个第六地址段开始向后逐个获取地址段;
每获取一个第五地址段和一个第六地址段,将当前获取的第五地址段和第六地址段进行比较;
当当前获取的第五地址段和第六地址段不同时,停止获取所述第五地址段和所述第六地址段,确定当前获取的第五地址段对应的第三网络区域等级B;
在当前获取的第五地址段对应的网络区域等级为A-2之后,停止获取所述第五地址段和所述第六地址段,如果当前获取的所述第五地址段和所述第六地址段相同,则确定当前获取的第五地址段的后一个地址段对应的第三网络区域等级B;
将所述源地址和所述目的地址中的第1个地址段到网络区域等级B-1对应的地址段进行删减,得到变长源地址和变长目的地址,并确定网络区域等级B对应的第一等级标识。
在一种可能的实现方式中,所述指示信息包括第二等级标识和第三等级标识,所述第二等级标识用于指示所述变长源地址中的起始地址段对应的网络区域等级,所述第三等级标识用于指示所述变长目的地址中的起始地址段对应的网络区域等级;
所述确定模块,用于:
基于所述源地址,生成变长源地址和对应的第三等级标识;
基于所述源地址和所述目的地址,生成变变长目的地址和对应的第二等级标识。
在一种可能的实现方式中,所述确定模块,用于:
将所述源地址中的除最后两个地址段之外的地址段,进行删减,得到变长源地址,并确定所述变长源地址中的起始地址段对应的第三等级标识;
确定所述源地址的地址段的数目和所述目的地址的地址段的数目中的较小数目A;
分别从所述目的地址中的第1个第五地址段和源地址中的第1个第六地址段开始向后逐个获取地址段;
每获取一个第五地址段和一个第六地址段,将当前获取的第五地址段和第六地址段进行比较;
当当前获取的第五地址段和第六地址段不同时,停止获取所述第五地址段和所述第六地址段,确定当前获取的第五地址段对应的第三网络区域等级B;
在当前获取的第五地址段对应的网络区域等级为A-2之后,停止获取所述第五地址段和所述第六地址段,如果当前获取的所述第五地址段和所述第六地址段相同,则确定当前获取的第五地址段的后一个地址段对应的第三网络区域等级B;
将所述源地址和所述目的地址中的第1个地址段到网络区域等级B-1对应的地址段进行删减,得到变长目的地址,并确定所述变长目的地址中的起始地址段对应的第二等级标识。
第六方面、提供了一种网络设备,所述网络设备包括:
收发器,用于获取数据分组,其中,所述数据分组中携带有变长源地址、变长目的地址和指示信息,所述变长源地址是在所述数据分组的源地址中删减前端的部分地址段或不删减地址段得到的,所述变长目的地址是在所述数据分组的目的地址中删减前端的部分地址段或不删减地址段得到的,所述指示信息用于指示所述变长源地址和所述变长目的地址中的起始地址段对应的网络区域等级;
存储器,该存储器包括计算机可读指令;
与所述存储器和所述收发器相连的处理器,所述处理器用于执行所述计算机可读指令,从而执行以下操作:
基于所述变长目的地址和所述指示信息,确定所述数据分组对应的下一跳的第二网络设备的网络等级地址;
基于所述第二网络设备的网络等级地址和所述指示信息,对所述数据分组中的变长源地址和变长目的地址进行地址段增减处理,并对所述数据分组中指示信息进行更新处理,得到处理后的数据分组;
所述收发器,还用于向所述第二网络设备发送所述处理后的数据分组。
第七方面、提供了一种源网络设备,所述源网络设备包括:
收发器,用于获取待发送的数据的源地址和目的地址;
存储器,该存储器包括计算机可读指令;
与所述存储器和所述收发器相连的处理器,所述处理器用于执行所述计算机可读指令,从而执行以下操作:
基于所述源地址和目的地址,生成变长源地址、变长目的地址和对应的指示信息,其中,所述变长源地址是在所述数据分组的源地址中删减前端的部分地址段或不删减地址段得到的,所述变长目的地址是在所述数据分组的目的地址中删减前端的部分地址段或不删减地址段得到的,所述指示信息用于指示所述变长源地址和所述变长目的地址中的起始地址段对应的网络区域等级;
生成携带有所述数据、所述变长源地址、所述变长目的地址和所述指示信息的数据分组;
所述收发器,还用于基于所述目的地址,发送所述数据分组。
第八方面、提供了一种计算机可读存储介质,包括计算机可读指令,当所述计算机可读存储介质在第一网络设备上运行时,使得所述第一网络设备执行上述第一方面所述的数据传输方法。
第九方面、提供了一种包含指令的计算机程序产品,当所述计算机程序产品在第一网络设备上运行时,使得所述第一网络设备执行上述第一方面所述的数据传输的方法。
第十方面、提供了一种计算机可读存储介质,包括计算机可读指令,当所述计算机可读存储介质在源网络设备上运行时,使得所述源网络设备执行上述第二方面所述的数据传输方法。
第十一方面、提供了一种包含指令的计算机程序产品,当所述计算机程序产品在源网络设备上运行时,使得所述源网络设备执行上述第二方面所述的数据传输的方法。
本申请实施例提供的技术方案带来的有益效果是:
通过本申请实施例,在数据分组中携带有变长源地址、变长目的地址和指示信息。变长源地址包括源地址中部分或者全部地址段,变长目的地址包括目的地址中部分或全部地址段,指示信息用于指示变长源地址和变长目的地址中的起始地址段对应的网络区域等级。可见,在该数据分组中无需携带完整的目的地址和完整的源地址。在接收到数据分组后,网络设备会对其中携带的变长源地址、变长目的地址进行增减处理,再对数据分组进行发送。因此,在数据分组中无需携带完整的目的地址和完整的源地址,可以有效提高网络设备对数据分组的发送效率。
附图说明
图1是本申请实施例提供的一种分级网络的示意图;
图2是本申请实施例提供的一种数据传输的方法流程图;
图3是本申请实施例提供的一种数据分组中的指示信息的示意图;
图4是本申请实施例提供的一种数据分组中的指示信息的示意图;
图5是本申请实施例提供的一种数据传输的方法流程图;
图6是本申请实施例提供的一种数据传输的装置的结构示意图;
图7是本申请实施例提供的一种数据传输的装置的结构示意图;
图8是本申请实施例提供的一种网络设备的结构示意图;
图9是本申请实施例提供的一种源网络设备的结构示意图。
具体实施方式
本申请实施例提供了一种数据传输的方法,该方法可以由分级网络中的网络设备实现。如图1所示,为一种分级网络的示意图。在该分级网络中,包括有多个网络区域,和多个子网,如子网N1、子网N2、子网N3、子网N4等。在每个网络区域中可以有多个网络设备,如交换设备,这些网络设备可以用于对数据分组进行转发。在每个子网中也可以有多个网络设备,这些网络设备之间可以进行数据传输。例如,子网N1中的网络设备C1作为源网络设备,可以向子网N4中的网络设备C2发送数据分组,则C2为目的网络设备。数据分组由源网络设备发送,通过用于转发的网络设备的转发至目的网络设备,在此过程中,可以采用本申请实施例所提供的方法,对数据分组中携带的源地址和目的地址进行删减,或者对删减后的源地址和目的地址进行增补,达到简化源地址和目的地址的目的。对于接收到数据分组的网络设备,可以根据该数据分组中携带的经过删减或者增补处理后的源地址和目的地址,计算出完整源地址和目的地址,以对数据进行准确的转发。
为了便于对本申请实施例的理解,下面对本申请实施例中涉及的分级网络中的基本概念进行介绍。
一、网络区域等级
根据网络区域在整个分级网络中的逻辑位置,例如地理位置、虚拟网络等,为网络区域指定等级高低及从属关系,这种指定的等级称为网络区域等级。例如,在图1所示的分级网络中,网络区域A的网络区域等级为1,网络区域B的网络区域等级为2,网络区域C的网络区域等级为2,网络区域D的网络区域等级为3,网络区域E的网络区域等级为3,网络区域F的网络区域等级为4,网络区域G的网络区域等级为1。
二、网络区域地址
网络区域地址是网络区域的全局唯一性标记。一个网络区域的地址继承自其直接的高等级网络区域。例如,在图1所示的分级网络中,网络区域A的网络区域地址为1,网络区域B的网络区域地址为1.1,网络区域C的网络区域地址为1.2,网络区域D的网络区域地址为1.1.1,网络区域E的网络区域地址为1.2.1,网络区域F的网络区域地址为1.1.1.1,网络区域G的网络区域地址为2。
三、网络等级地址
网络区域地址针对网络区域,网络等级地址针对网络区域中的网络设备。对网络区域中的所有网络设备指定网络等级地址,网络设备的网络等级地址是其所属的网络区域的网络区域地址。在一个网络区域中,所有网络设备的网络等级地址相同,都为该网络区域的网络区域地址。例如,在图1所示的分级网络中,网络设备R6与网络设备R7均处于网络区域E中,网络设备R6的网络等级地址为1.2.1,网络设备R7的网络等级地址也为1.2.1,网络区域E的网络区域地址同样为1.2.1。
四、网络地址
网络地址是网络中每个需要进行通信的网络设备所具有的标识,是交换设备转发数据分组的依据,具有全局唯一性。每一个网络地址由网络号和设备号组成,其中,设备号用于标识在一个子网中的网络设备,可以以数字加下划线表示,网络号为其对应的网络等级地址和所属子网的子网标识号。例如,在图1所示的分组网络中,子网N1中的网络设备C1的网络地址可以为1.1.1.1.1. 10。其中,1.1.1.1.1为其网络号, 10为其设备号。
五、变长源地址
变长源地址替代了传统的数据分组中携带的完整的源地址。各网络设备在接收到数据分组后,均可能对该数据分组中携带的变长源地址进行地址段增减处理,使得变长源地址的地址段长度发生变化。网络设备在接收到数据分组后,可以根据自身的网络等级地址和变长源地址,得出该数据分组的完整的源地址。需要说明的是,该变长源地址仅为本申请实施例中的对于具有上述特征的网络地址所定义的名称。当然,也可以对其定义为其他名称,本申请实施例对此不作限定。
六、变长目的地址
变长目的地址替代了传统的数据分组中携带的完整的目的地址。各网络设备在接收到数据分组后,均可能对该数据分组中携带的变长目的地址进行地址段增减处理,使变长目的地址的地址段长度发生变化。网络设备在接收到数据分组后,可以根据自身的网络等级地址和变长目的地址,得出该数据分组的完整的目的地址。需要说明的是,该变长目的地址仅为本申请实施例中的对于具有上述特征的网络地址所定义的名称。当然,也可以对其定义为其他名称,本申请实施例对此不作限定。
如图2所示,为本申请实施例提供的一种数据传输的方法,该方法可以由第一网络设备实现,该方法的处理流程可以包括如下步骤:
步骤201、获取数据分组。
其中,数据分组中携带有变长源地址、变长目的地址和指示信息,变长源地址包括数据分组的源地址中部分或全部地址段,如果包括部分地址段,则该部分地址段在源地址中位于 除这部分地址段之外的地址段的后部,变长目的地址是在数据分组的目的地址中的部分或全部地址段,如果包括部分地址段,则该部分地址段在目的地址中位于除这部分地址段之外的地址段的后部,指示信息用于指示变长源地址和变长目的地址中的起始地址段对应的网络区域等级。指示信息也可以称为起始网络地址等级指示信息,本申请中对于其名称不做限定。
在实施中,网络设备可以为源网络设备,则源网络设备可以生产数据并进行分组,得到数据分组。网络设备还可以为用于转发数据的交换设备,则交换设备可以接收上一跳网络设备发送的数据分组。在数据分组的网络层协议头部携带有变长源地址、变长目的地址以及指示信息。对于起始网络地址等级指示信息可以有如下情况。
情况一、
数据分组中携带的指示信息可以包括有第一等级标识,该第一等级标识既用于指示数据分组中的变长源地址的起始地址段对应的网络区域等级,又用于指示数据分组中变长目的地址中的起始地址段对应的网络区域等级。
参照图3,为一种数据分组中变长源地址、变长目的地址和第一等级标识的示意图。在图3中,第一等级标识可以为数据分组中变长源地址和变长目的地址的起始地址段对应的网络区域等级。如,第一等级标识为L,即可以表示变长目的地址1.2.6. 7和源地址1.2.3.4. 5中的起始地址段“1”,对应的网络区域等级为L。
需要说明的是,该第一等级标识也可以以其他形式表示,本申请实施例中对于第一等级标识的具体表示形式不做限定。另外,图3中仅为示例性的示出了一种变长源地址、变长目的地址和第一等级标识在网络层协议头部中的顺序,变长源地址、变长目的地址和第一等级标识在网络层协议头部中还可以按照其他顺序排列,本申请对此不做限定。
情况二、
数据分组中携带的指示信息可以包括第二等级标识和第三等级标识,第二等级标识用于指示变长目的地址中的起始地址段对应的网络区域等级,第三等级标识用于指示变长源地址中的起始地址段对应的网络区域等级。
参照图4,为一种数据分组中变长源地址、变长目的地址、第二等级标识和第三等级标识的示意图。在图4中,第二等级标识可以为数据分组中变长目的地址中的起始地址段对应的网络区域等级。第三等级标识可以为变长源地址中的起始地址段对应的网络区域等级。如,第二等级标识为M,即可以表示变长目的地址1.1.1. 10中的起始地址段“1”对应的网络区域等级为M,第二等级标识为N,即可以表示源地址2.1.2. 10中的起始地址段“2”对应的网络区域等级为M。
需要说明的是,该第二等级标识和第三等级标识也可以以其他形式表示,本申请对于第二等级标识和第三等级标识的具体表示形式不做限定。另外,图4中仅示例性的示出了一种变长源地址、变长目的地址、第二等级标识和第三等级标识在网络层协议头部中的顺序,变长源地址、变长目的地址、第二等级标识和第三等级标识在网络层协议头部中还可以按照其他顺序排列,本申请对此不做限定。
步骤202、基于变长目的地址和指示信息,确定数据分组对应的下一跳的第二网络设备的网络等级地址。
在实施中,第一网络设备获取数据分组中的变长目的地址和指示信息。对应于上述指示信息包括第一等级标识的情况,此处,可以获取变长目的地址和第一等级标识。对应于上述 指示信息包括第二等级标识和第三等级标识的情况,此处,可以获取变长目的地址和第三等级标识。
然后,可以查询路由表,确定出第一网络设备中用于发送该数据分组的目标端口的端口标识,该目标端口与该数据分组对应的下一跳的第二网络设备通过链路连接。
在查询路由表之前,可以先根据指示信息,判断变长目的地址是否需要补齐。如果指示信息指示变长目的地址中的起始地址段对应的网络区域等级为1,则无需对变长目的地址进行补齐。如果指示信息指示变长目的地址中的起始地址段对应的网络区域等级不是1,则需要对变长目的地址进行补齐,得到目的地址。
在对变长目的地址进行补齐时,可以根据指示信息和第一网络设备的网络等级地址实现。即,将第一网络设备的网络等级地址中,该指示信息所指示的网络区域等级对应的地址段之前的地址段,补齐到变长目的地址之前。例如,数据分组中携带的变长目的地址为4.1.2,指示信息指示的网络区域等级为3,而第一网络设备的网络等级地址为1.1.2.1.3,在1.1.2.1.3中网络区域等级3对应的地址段为2,那么,需要将前两个地址段补齐到变长目的地址之前,得到目的地址为1.1.4.1.2。
得到目的地址后,可以在路由表中查询出第一网络设备中用于发送该数据分组的目标端口的端口标识。然后,基于该目标端口的端口标识,可以获取到上述第二网络设备的网络等级地址。此处,获取第二网络设备的网络等级地址的方式可以有以下几种。
方式一、
第一网络设备本地可以存储有第一网络设备的各端口的端口标识,与每个端口标识对应的端口所连接的网络设备的网络等级地址的对应关系。那么,可以通过查询该对应关系,直接获取到目标端口的端口标识对应的网络等级地址,即第二网络设备的网络等级地址。
如图1所示的分级网络中,网络设备R2的三个端口,端口1、端口2和端口3,分别与网络设备R1、网络设备R3和网络设备R5通过链路连接。那么,在网络设备R2中可以对应存储有端口1的端口标识与网络设备R1的网络等级地址、端口2的端口标识与网络设备R3的网络等级地址,以及端口3的端口标识与网络设备R5的网络等级地址。如下表1,示例性的给出了一种端口标识和网络等级地址的对应关系。
表1
Figure PCTCN2021071180-appb-000001
在此方式一中,该对应关系可以为技术人员预先配置在该第一网络设备中的,也可以为第一网络设备在部署到分级网络后,主动建立的该对应关系。主动建立该对应关系的方法可以如下:
对于第一网络设备的每个端口,通过该端口向与该端口连接的网络设备发送网络等级地址获取指令,网络设备接收到网络等级地址获取指令后,返回自己的网络等级地址。第一网络设备可以将接收到的网络等级地址,与接收该网络等级地址的端口的端口标识建立对应关系,并进行存储。
如图1所示的分级网络中,网络设备R2可以通过端口1向网络设备R1发送网络等级地址获取请求,网络设备R2可以通过端口2向网络设备R3发送网络等级地址获取请求,网络设备R2可以通过端口3向网络设备R5发送网络等级地址获取请求。相应的,网络设备R1向端口1返回网络设备R1的网络等级地址,网络设备R3向端口2返回网络设备R3的网络等级地址,网络设备R5向端口3返回网络设备R5的网络等级地址。
方式二、在查询出用于发送数据分组的目标端口的端口标识后,通过目标端口,向第二网络设备发送网络等级地址获取请求。接收第二网络设备返回的第二网络设备的网络等级地址。
如图1所示的分级网络中,网络设备R2确定出目标端口的为端口1,然后,可以通过端口1向网络设备R1发送网络等级地址获取请求,网络设备R1在接收到该网络等级地址获取请求后,向端口1返回网络设备R1的网络等级地址。
步骤203、基于第二网络设备的网络等级地址和指示信息,对数据分组中的变长源地址和变长目的地址进行地址段增减处理,并对数据分组中指示信息进行更新处理,得到处理后的数据分组,向第二网络设备转发处理后的数据分组。
在实施中,第一网络设备可以基于第一网络设备的网络等级地址、指示信息和第二网络设备的网络等级地址,判断变长源地址和变长目的地址是否满足地址段增补条件,如果满足地址段增补条件,则对变长源地址和变长目的地址进行地址段增补处理。如果不满足地址段增补条件,则基于第二网络设备的网络等级地址和指示信息,对变长源地址和变长目的地址进行地址段删减处理。
对应于上述指示信息的两种情况,对变长源地址和变长目的地址的地址段增减处理分别进行说明。
对应于上述情况一、指示信息中包括第一等级标识。
基于第一网络设备的网络等级地址、第一等级标识和第二网络设备的网络等级地址,确定变长源地址和变长目的地址是否满足地址段增补条件,如果满足地址段增补条件,则对变长源地址和变长目的地址进行地址段增补处理。如果不满足地址段增补条件,则基于第二网络设备的网络等级地址和第一等级标识,对变长源地址和所述变长目的地址进行地址段删减处理。
以第一等级标识用于指示变长源地址和变长目的地址中的起始地址段对应的网络区域等级L为例进行说明。
一、对变长源地址和变长目的地址进行地址段增补处理可以有如下方法。
分别从第一网络设备的网络等级地址中的第1个第一地址段和第二网络设备的网络等级地址中的第1个第二地址段开始向后逐个获取地址段。每获取一个第一地址段和一个第二地址段,将当前获取的第一地址段和第二地址段进行比较。当当前获取的第一地址段与当前获取的第二地址段不同时,停止获取第一地址段和第二地址段,判断变长源地址和变长目的地址满足地址段增补条件,确定当前获取的第一地址段对应的网络区域等级X。将第一网络设备的网络等级地址中的第X个地址段到第L-1个地址段确定为增补地址段。并添加至变长源地址和变长目的地址的前端。在当前获取的第一地址段对应的网络区域等级为L-1之后,停止获取第一地址段和第二地址段,判断变长源地址和变长目的地址不满足地址段增补条件,不对变长源地址和所述变长目的地址进行地址段增补处理。执行下述地址段删减的方法。
二、对变长源地址和变长目的地址进行地址段删减处理可以有如下方法。
在上述不对变长源地址和变长目的地址进行地址段增补处理的情况下,可以对变长源地址和变长目的地址进行地址段删减处理。
确定目的地址的地址段的数目和第二网络设备的网络等级地址的地址段的数目中的较小数目P。分别从第二网络设备的网络等级地址中的第L个第二地址段和变长目的地址中的第1个第三地址段开始向后逐个获取地址段。每获取一个第二地址段和一个第三地址段,将当前获取的第二地址段和第三地址段进行比较。当当前获取的第二地址段与当前获取的第三地址段不同时,停止获取第二地址段和第三地址段,确定当前获取的第二地址段对应的第一网络区域等级。在当前获取的第二地址段对应的网络区域等级为P之后,停止获取第二地址段和第三地址段,如果当前获取的第二地址段和第三地址段相同,则确定当前获取的第二地址段的后一个地址段对应的第一网络区域等级。
确定源地址的地址段的数目和第二网络设备的网络等级地址的地址段的数目中的较小数目Q。分别从第二网络设备的网络等级地址中的第L个第二地址段和变长源地址中的第1个第四地址段开始向后逐个获取地址段。每获取一个第二地址段和一个第四地址段,将当前获取的第二地址段和第四地址段进行比较。当当前获取的第二地址段与当前获取的第四地址段不同时,停止获取第二地址段和第四地址段,确定当前获取的第二地址段对应的第二网络区域等级。在当前获取的第二地址段对应的网络区域等级为P之后,停止获取第二地址段和第四地址段,如果当前获取的第二地址段和第四地址段相同,则确定当前获取的第二地址段的后一个地址段对应的第二网络区域等级。
确定第一网络区域等级和第二网络区域等级中的较小网络区域等级Y。将变长源地址和变长目的地址中的第1个地址段到网络区域等级Y-1对应的地址段进行删减。
下面结合图1所示的分组网络,以数据分组在图1所示分级网络中的传输为例,对上述变长源地址和变长目的地址的地址段增补处理和地址段删减处理进行说明。
在图1所示的分组网络中,网络区域A中的网络设备R1的网络等级地址为1,网络区域B中的网络设备R2和R3的网络等级地址为1.1,网络区域C中的网络设备R4的网络等级地址为1.2,网络区域D中的网络设备R5的网络等级地址为1.1.1,网络区域E中的网络设备R6和R7的网络等级地址为1.2.1,网络区域F中的网络设备R8的网络等级地址为1.1.1.1,网络区域G中的网络设备R9的网络等级地址为2。源网络设备为子网N1中的网络设备C1,其网络地址为1.1.1.1.1. 10,目的网络设备为子网N3中的网络设备C2,其网络地址为1.2.1.2. 10。数据分组的传输路径为:C1-R8-R3-R9-R7-C2。
源网络设备C1可以生成数据分组,数据分组中第一等级标识为1,即指示变长源地址和变长目的地址的起始地址段对应网络区域等级为1。变长源地址为1.1.1.1.1. 10,变长目的地址为1.2.1.2. 10。C1可以先采用上述地址段删减的方法,对其中的变长源地址和变长目的地址进行删减。先查询路由表,确定出下一跳的第二网络设备R8的网络等级地址为1.1.1.1。
目的地址的地址段的数目5和R8的网络等级地址的地址段的数目4进行比较,则二者中的较小数目为4。分别从R8的网络等级地址1.1.1.1中的第1个第二地址段和变长目的地址1.2.1.2. 10中的第1个第三地址段开始向后逐个获取地址段。在将要获取的第二地址段对应的网络区域等级为5之前,每获取一个第二地址段和一个第三地址段,将当前获取的第二地址段和第三地址段进行比较,在比较到第2个第二地址段1和第2个第三地址段2时,停止 获取第二地址段和第三地址段,确定当前获取的第二地址段对应的第一网络区域等级为2。
源地址的地址段的数目6和R8的网络等级地址的地址段的数目4进行比较,则二者中的较小数目为4。分别从R8的网络等级地址1.1.1.1中的第1个第二地址段和变长源地址1.1.1.1.1. 10中的第1个第四地址段开始向后逐个获取地址段。在将要获取的第二地址段对应的网络区域等级为5之前,每获取一个第二地址段和一个第四地址段,将当前获取的第二地址段和第四地址段进行比较。在比较完到第4个第二地址段1和第4个第四地址段1后,前4个第二地址段和对应的第四地址段均相同。则将要获取的第二地址段对应的网络区域等级为5,停止获取第二地址段和所述第四地址段,确定当前获取的第二地址段对应的第二网络区域等级4。
确定第一网络区域等级2和第二网络区域等级4中的较小网络区域等级为2。则将变长源地址1.1.1.1.1. 10和变长目的地址1.2.1.2. 10中的第1个地址段到网络区域等级1对应的地址段进行删减,也即是对第1个地址段进行删减。得到地址段删减处理后的变长源地址1.1.1.1. 10,以及地址段删减处理后的变长目的地址2.1.2. 10。并更新第一等级标识为2。将处理后的数据分组发送至R8。
然后,R8查询路由表,确定出数据分组对应的下一跳的第二网络设备R3的网络等级地址为1.1。先执行地址段增补的方法,判断无需对数据分组中的变长源地址和变长目的地址进行地址段增补。再执行地址段删减方法,判断也无需对数据分组中的变长源地址和变长目的地址进行地址段删减。则R8可以直接将数据分组转发至R3。
再然后,R3查询路由表,确定出数据分组对应的下一跳的第二网络设备R9的网络等级地址为2。先执行地址段增补的方法。分别从R3的网络等级地址1.1中的第1个第一地址段和R9的网络等级地址中的第1个第二地址段开始向后逐个获取地址段。在将要获取的第一地址段对应的网络区域等级为2之前,每获取一个第一地址段和一个第二地址段,将当前获取的第一地址段和第二地址段进行比较。对于此例来说,即,只比较第1个第一地址段1和第1个第二地址段2即可。当前获取的第一地址段1与当前获取的第二地址段2不同,停止获取第一地址段和第二地址段,确定当前获取的第一地址段对应的网络区域等级1。将第一网络设备的网络等级地址中的第1个地址段到第1地址段确定为增补地址段。即,将第一网络设备的网络等级地址中的第1个地址段1,确定为增补地址段。在变长源地址和变长目的地址的前端添加增补地址段。得到地址增补处理后的变长源地址为1.1.1.1.1. 10,增补处理后的变长目的地址为1.2.1.2. 10。并更新第一等级标识为1。进行地址段增补处理后,则不再执行地址段删减的方法。将处理后的数据分组转发至R9。
再然后,R9查询路由表,确定出数据分组对应的下一跳的第二网络设备R7的网络等级地址为1.2.1。先执行地址段增补的方法,判断无需进行地址段增补处理。再执行地址段删减的方法,得到地址段删减处理后的变长源地址为1.1.1.1. 10,地址段删减处理后的变长目的地址为2.1.2. 10。并更新第一等级标识为2。将处理后的数据分组转发至R7。
最后,R7查询路由表,确定出数据分组对应的下一跳为目的网络设备C2,则可以直接交付,将该数据分组直接转发至C2。
对应于上述情况二、指示信息中包括第二等级标识和第三等级标识。
基于第一网络设备的网络等级地址、第二等级标识和第二网络设备的网络等级地址,确定变长目的地址是否满足第一地址段增补条件,如果变长目的地址满足第一地址段增补条件, 则对变长目的地址进行地址段增补处理。如果变长源地址不满足第二地址段增补条件,则基于第二网络设备的网络等级地址和第三等级标识,对变长源地址进行地址段删减处理。
基于第一网络设备的网络等级地址、第三等级标识和第二网络设备的网络等级地址,确定变长源地址是否满足第二地址段增补条件,如果变长源地址满足第二地址段增补条件,则对变长源地址进行地址段增补处理。如果变长目的地址不满足第一地址段增补条件,则基于第二网络设备的网络等级地址和第二等级标识,对变长目的地址进行地址段删减处理。
以第二等级标识用于指示变长目的地址中的起始地址段对应的网络区域等级M,第三等级标识用于指示变长目的地址中的起始地址段对应的网络区域等级N为例进行说明。
一、对变长源地址和变长目的地址进行地址段增补处理可以有如下方法。
分别从第一网络设备的网络等级地址中的第1个第一地址段和第二网络设备的网络等级地址中的第1个第二地址段开始向后逐个获取地址段。每获取一个第一地址段和一个第二地址段,将当前获取的第一地址段和第二地址段进行比较。当当前获取的第一地址段与当前获取的第二地址段不同时,停止获取第一地址段和第二地址段,判断变长目的地址满足第一地址段增补条件,确定当前获取的第一地址段对应的网络区域等级X′。将第一网络设备的网络等级地址中的第X′个地址段到第M-1个地址段确定为增补地址段,添加至变长目的地址的前端。
在当前获取的第一地址段对应的网络区域等级为M-1之后,停止获取第一地址段和第二地址段,判断变长目的地址不满足第一地址段增补条件,则可以执行下述“二”中对变长目的地址的地址段删减的方法。
分别从第一网络设备的网络等级地址中的第1个第一地址段和第二网络设备的网络等级地址中的第1个第二地址段开始向后逐个获取地址段。每获取一个第一地址段和一个第二地址段,将当前获取的第一地址段和第二地址段进行比较。当当前获取的第一地址段与当前获取的第二地址段不同时,停止获取第一地址段和第二地址段,判断变长源地址满足第二址段增补条件,确定当前获取的第一地址段对应的网络区域等级X″。将第一网络设备的网络等级地址中的第X″个地址段到第N-1个地址段确定为第二增补地址段。
在变长源地址的前端添加第二增补地址段。在当前获取的第一地址段对应的网络区域等级为N-1之后,停止获取第一地址段和第二地址段,判断变长源地址不满足第二地址段增补条件,则可以执行下述“二”中对变长源地址的地址段删减的方法。
二、对变长源地址和变长目的地址进行地址段删减处理可以有如下方法。
确定目的地址的地址段的数目和第二网络设备的网络等级地址的地址段的数目中的较小数目P′。分别从第二网络设备的网络等级地址中的第M个第二地址段和变长目的地址中的第1个第三地址段开始向后逐个获取地址段。每获取一个第二地址段和一个第三地址段,将当前获取的第二地址段和第三地址段进行比较。当当前获取的第二地址段与当前获取的第三地址段不同时,停止获取第二地址段和第三地址段,确定当前获取的第二地址段对应的第一网络区域等级。在获取的第二地址段对应的网络区域等级为P′之后,停止获取第二地址段和第三地址段,如果当前获取的第二地址段和第三地址段相同,则确定当前获取的第二地址段的后一个地址段对应的第一网络区域等级Y′。将变长目的地址中的第1个地址段到网络区域等级Y′-1对应的地址段进行删减。
确定源地址的地址段的数目和第二网络设备的网络等级地址的地址段的数目中的较小数 目Q′。分别从第二网络设备的网络等级地址中的第N个第二地址段和变长源地址中的第1个第四地址段开始向后逐个获取地址段。每获取一个第二地址段和一个第四地址段,将当前获取的第二地址段和第四地址段进行比较。当当前获取的第二地址段与当前获取的第四地址段不同时,停止获取第二地址段和第四地址段,确定当前获取的第二地址段对应的第二网络区域等级。在获取的第二地址段对应的网络区域等级为Q′之后,停止获取第二地址段和第四地址段,如果当前获取的第二地址段和所述第四地址段相同,则确定当前获取的第二地址段的后一个地址段对应的第二网络区域等级Y″。将变长源地址中的第1个地址段到网络区域等级Y″-1对应的地址段进行删减。
下面结合图1所示的分组网络,以数据分组在图1所示分级网络中的传输为例,对上述变长源地址和变长目的地址的地址段增补处理和地址段删减处理进行说明。
其中,各网络设备的网络地址、网络等级地址,和各网络区域的网络区域地址,与上述对应于情况一中的举例相同,数据分组的传输路径同样为:C1-R8-R3-R9-R7-C2。
源网络设备C1可以生成数据分组,数据分组中第一等级标识为1,即指示变长源地址和变长目的地址的起始地址段对应网络区域等级为1。变长源地址为1.1.1.1.1. 10,变长目的地址为1.2.1.2.10。查询路由表,确定出下一跳的第二网络设备R8的网络等级地址为1.1.1.1。然后,可以先采用上述地址段删减的方法,分别对其中的变长源地址和变长目的地址进行删减。得到地址段删减后的变长目的地址为2.1.2. 10,地址段删减后的变长源地址为1. 10,更新第二等级标识为2,第三等级标识为5。将处理后的数据分组发送至R8。
然后,R8查询路由表,确定出数据分组对应的下一跳的第二网络设备R3的网络等级地址为1.1。先分别对变长源地址和变长目的地址执行地址段增补的方法。判断变长目的地址无需进行地址段增补处理。再对该变长目的地址指向地址段删减的方法,判断该变长目的地址也无需进行地址段删减处理。而对于变长源地址,进行地址段增补后,变为1.1.1. 10。则不再对变长源地址执行地址段删减的方法。更新第三等级标识为3。将处理后的数据分组转发至R3。
再然后,R3查询路由表,确定出数据分组对应的下一跳的第二网络设备R9的网络等级地址为2。先分别对变长源地址和变长目的地址执行地址段增补的方法。得到地址段增补处理后的变长目的地址为1.2.1.2. 10,地址段增补处理后的变长源地址为1.1.1.1.1. 10。更新第二等级标识为1,第三等级标识为1。将处理后的数据分组转发至R9。
再然后,R9查询路由表,确定出数据分组对应的下一跳的第二网络设备R7的网络等级地址为1.2.1。先分别对变长源地址和变长目的地址执行地址段增补的方法,判断无需进行地址段增补处理。再分别对变长源地址和变长目的地址执行地址段删减的方法,得到地址段删减处理后的变长目的地址为2. 10,地址段删减处理后的变长源地址为1.1.1.1. 10。并更新第二等级标识为4,第三等级标识为2。将处理后的数据分组转发至R7。
最后,R7查询路由表,确定出数据分组对应的下一跳为目的网络设备C2,则可以直接交付,将该数据分组直接转发至C2。
此处需要说明的是,在上述对数据分组中的变长源地址和变长目的地址的地址段增减处理中,是先执行地址段增补的方法,如果满足地址段增补条件,则进行地址段增补处理,而不再执行地址段删减的方法。如果不满足地址段增补条件,则执行地址段删减的方法。除此之外,还可以先执行地址段删减的方法,如果满足地址段删减条件,则进行地址段删减处理, 而不再执行地址段增补的方法。如果不满足地址段删减条件,则执行地址段增补的方法。或者,还可以并行执行地址段增补的方法和地址段删减的方法。无论采用上述哪种执行顺序,最终对于变长源地址和变长目的地址,均只进行了地址段增补处理或者地址段删减处理或者两个处理均未进行,不会出现既进行了地址段增补处理又进行了地址段删除处理的情况。
在一种可能的实现方式中,源网络设备在对数据分组中的可变源地址和可变目的地址进行地址段删减处理时,处理方法可以如下。此处,数据分组中的可变源地址和可变目的地址,在源网络设备中未经地址段删减时,即为源地址和目的地址。
对应于上述情况一、指示信息中包括第一等级标识。
确定源地址的地址段的数目和目的地址的地址段的数目中的较小数目A。分别从目的地址中的第1个第五地址段和源地址中的第1个第六地址段开始向后逐个获取地址段。每获取一个第五地址段和一个第六地址段,将当前获取的第五地址段和第六地址段进行比较。如果比较到第A-2个时仍然相同,则将源地址和目的地址中第A-1个地址段和其后所有地址段保留,将其余地址段进行删减。如果第B个第五地址段和第B个第六地址段不同,其中,B<(A-2),则将源地址和目的地址中的第B个地址段和其后所有地址段保留保留,其余地址段进行删减。
对应于上述情况二、指示信息中包括第二等级标识和第三等级标识。
确定源地址的地址段的数目为m,目的地址的地址段的数目为n,二者中较小的数目为A。对于源地址,可只保留第m-1各地址段和第m个地址段,其余地址段均进行删减。对于目的地址,分别从目的地址中的第1个第五地址段和源地址中的第1个第六地址段开始向后逐个获取地址段。每获取一个第五地址段和一个第六地址段,将当前获取的第五地址段和第六地址段进行比较。如果比较到第A-2个时仍然相同,则将源地址和目的地址中第A-1个地址段和其后所有地址段保留,将其余地址段进行删减。如果第B个第五地址段和第B个第六地址段不同,其中,B<(A-2),则将源地址和目的地址中的第B个地址段和其后所有地址段保留保留,其余地址段进行删减。
如图5所示,为本申请实施例提供的一种数据传输的方法,该方法可以由源网络设备实现,该方法的处理流程可以包括如下步骤:
步骤501、获取待发送的数据的源地址和目的地址。
在实施中,源网络设备可以获取某业务对应的待发送的数据。根据业务需求,可以确定出接收数据的目的网络设备,进一步确定出目的网络设备的网络地址,即目的地址。而该源网络设备的网络地址,即为源地址。
步骤502、基于源地址和目的地址,生成变长源地址、变长目的地址和对应的指示信息。
其中,变长源地址、变长目的地址和指示信息,所述变长源地址是在所述数据分组的源地址中删减前端的部分地址段或不删减地址段得到的,变长目的地址是在数据分组的目的地址中删减前端的部分地址段或不删减地址段得到的,指示信息用于指示所述变长源地址和变长目的地址中的起始地址段对应的网络区域等级。
在实施中,源网络设备在封装数据之前,可以先对源地址和目的地址进行简化,得到变长源地址和变长目的地址,同时,还可以得到用于指示变长源地址和变长目的地址中的起始地址段对应的网络区域等级的指示信息。根据指示信息的不同情况,对于源地址和目的地址简化也可以不同,下面针对指示信息的几种不同情况,对源地址和目的地址简化进行分别说 明。
情况一、指示信息包括第一等级标识,第一等级标识既用于指示变长源地址中起始地址段对应的网络区域等级,又用于指示变长目的地址中的起始地址段对应的网络区域等级。
在此情况下,对于源地址和目的地址进行简化可以有如下处理:
确定源地址的地址段的数目和目的地址的地址段的数目中的较小数目A。分别从目的地址中的第1个第五地址段和源地址中的第1个第六地址段开始向后逐个获取地址段。每获取一个第五地址段和一个第六地址段,将当前获取的第五地址段和第六地址段进行比较。当当前获取的第五地址段和第六地址段不同时,停止获取第五地址段和所述第六地址段,确定当前获取的第五地址段对应的第三网络区域等级B。在当前获取的第五地址段对应的网络区域等级为A-2之后,停止获取第五地址段和所述第六地址段,如果当前获取的所述第五地址段和所述第六地址段相同,则确定当前获取的第五地址段的后一个地址段对应的第三网络区域等级B。将源地址和目的地址中的第1个地址段到网络区域等级B-1对应的地址段进行删减,得到变长源地址和变长目的地址,并确定网络区域等级B对应的第一等级标识。
例如,源地址为1.2.3.4.5,目的地址为1.2.6.7,二者地址段的较小数目为4。分别从目的地址中的第1个第五地址段和源地址中的第1个第六地址段开始向后逐个获取地址段,每获取一个第五地址段和一个第六地址段,将当前获取的第五地址段和第六地址段进行比较。获取第1个第五地址段和第1个第六地址段进行比较,二者相同。再获取第2个第五地址段和第2个第六地址段进行比较,二者相同。因为,当前获取的第五地址段对于的网络区域等级为2,即A-2。则停止或者地址段,确定当前获取的第五地址段的后一个地址段对应的第三网络区域等级为3。那么,可以将源地址和目的地址中的第1个地址段到网络区域等级2,即B-1,对应的地址段进行删减,得到变长源地址3.4.5,和变长目的地6.7,并确定变长源地址和变长目的地址的起始地址段对应的网络区域等级3对应的第一等级标识。需要说明的是,等级标识可以以对应的网络区域等级进行表示,即对于网络区域等级3,对应的第一等级标识为3。
情况二、指示信息包括第二等级标识和第三等级标识,第二等级标识用于指示变长源地址中的起始地址段对应的网络区域等级,第三等级标识用于指示变长目的地址中的起始地址段对应的网络区域等级。
在此情况下,对于源地址和目的地址进行简化可以有如下处理:
对源地址进行简化:将源地址中的除最后两个地址段之外的地址段,进行删减,得到变长源地址,并确定变长源地址中的起始地址段对应的第三等级标识。
对目的地址进行简化:确定源地址的地址段的数目和目的地址的地址段的数目中的较小数目A。分别从目的地址中的第1个第五地址段和源地址中的第1个第六地址段开始向后逐个获取地址段。每获取一个第五地址段和一个第六地址段,将当前获取的第五地址段和第六地址段进行比较。当当前获取的第五地址段和第六地址段不同时,停止获取所述第五地址段和所述第六地址段,确定当前获取的第五地址段对应的第三网络区域等级B。在当前获取的第五地址段对应的网络区域等级为A-2之后,停止获取第五地址段和第六地址段,如果当前获取的第五地址段和第六地址段相同,则确定当前获取的第五地址段的后一个地址段对应的第三网络区域等级B。将源地址和目的地址中的第1个地址段到网络区域等级B-1对应的地址段进行删减,得到变长目的地址,并确定变长目的地址中的起始地址段对应的第二等级标 识。
例如,源地址为1.2.3.4.5,目的地址为1.2.6.7,二者地址段的较小数目为4。
对于源地址的简化:保留源地址中的后两个地址段,将其余地址段进行删减,得到变长源地址为4.5,确定该变长源地址的起始地址段对应的网络区域等级4对应的第三等级标识。
对于目的地址的简化:分别从目的地址中的第1个第五地址段和源地址中的第1个第六地址段开始向后逐个获取地址段,每获取一个第五地址段和一个第六地址段,将当前获取的第五地址段和第六地址段进行比较。获取第1个第五地址段和第1个第六地址段进行比较,二者相同。再获取第2个第五地址段和第2个第六地址段进行比较,二者相同。因为,当前获取的第五地址段对于的网络区域等级为2,即A-2。则停止或者地址段,确定当前获取的第五地址段的后一个地址段对应的第三网络区域等级为3。那么,可以将目的地址中的第1个地址段到网络区域等级2(即B-1)对应的地址段进行删减,得到变长目的地址6.7,并确定该变长目的地址的起始地址段对应的网络区域等级3对应的第二等级标识。需要说明的是,等级标识可以以对应的网络区域等级进行表示,例如,对于网络区域等级3,对应的等级标识可以为3。
步骤503、生成携带有数据、变长源地址、变长目的地址和指示信息的数据分组。
在实施中,在确定出变长源地址、变长目的地址和指示信息的数据分组后,可以对数据进行封装,得到在网络层协议头部携带有变长源地址、变长目的地址和指示信息的数据分组。
步骤504、基于目的地址,发送数据分组。
在实施中,根据目的地址,查询路由表,确定出目标端口,通过该目的端口向数据分组对应的下一跳的网络设备发送数据分组。
通过本申请实施例,在数据分组中携带有变长源地址、变长目的地址和指示信息。变长源地址包括源地址中部分或者全部地址段,变长目的地址包括目的地址中部分或全部地址段,指示信息用于指示变长源地址和变长目的地址中的起始地址段对应的网络区域等级。可见,在该数据分组中无需携带完整的目的地址和完整的源地址。在接收到数据分组后,网络设备会对其中携带的变长源地址、变长目的地址进行增减处理,再对数据分组进行发送。因此,在数据分组中无需携带完整的目的地址和完整的源地址,可以有效提高网络设备对数据分组的发送效率。
本申请实施例还提供了一种数据传输的方法,在该方法中,数据分组中可以不携带有变长源地址,该方法的处理流程可以包括如下步骤:
步骤601、获取数据分组,其中,所述数据分组中携带有变长目的地址和指示信息,变长目的地址是在数据分组的目的地址中删减前端的部分地址段或不删减地址段得到的,指示信息用于指示变长目的地址中的起始地址段对应的网络区域等级。
对于该步骤601的具体处理可以参见上述步骤201中获取数据分组的实施方式。
步骤602、基于变长目的地址和所述指示信息,确定数据分组对应的下一跳的第二网络设备的网络等级地址。
对于该步骤602的具体处理方式可以参见上述步骤202中确定第二网络设备的网络等级地址的实施方式。
步骤603、基于第二网络设备的网络等级地址和指示信息,对数据分组中的变长目的地 址进行地址段增减处理,并对数据分组中指示信息进行更新处理,得到处理后的数据分组,向第二网络设备发送处理后的数据分组。
对于该步骤603的具体处理方式可以参见上述步骤203中对变长目的地址的地址段增减处理的实施方式。
基于相同的技术构思,本申请实施例还提供了一种数据传输的装置,如图6所示,该装置包括:获取模块610、确定模块620、处理模块630和发送模块640,其中:
获取模块610,用于获取数据分组,其中,所述数据分组中携带有变长源地址、变长目的地址和指示信息,所述变长源地址包括所述数据分组的源地址中部分或全部地址段,所述变长目的地址包括所述数据分组的目的地址中的部分或全部地址段,所述指示信息用于指示所述变长源地址和所述变长目的地址中的起始地址段对应的网络区域等级。具体可以实现上述步骤201中的获取功能,以及其他隐含步骤。
确定模块620,用于基于所述变长目的地址和所述指示信息,确定所述数据分组对应的下一跳的第二网络设备的网络等级地址。具体可以实现上述步骤202中的确定功能,以及其他隐含步骤。
处理模块630,用于基于所述第二网络设备的网络等级地址和所述指示信息,对所述数据分组中的变长源地址和变长目的地址进行地址段增减处理,并对所述数据分组中指示信息进行更新处理,得到处理后的数据分组。具体可以实现上述步骤203中的处理功能,以及其他隐含步骤。
发送模块640,用于向所述第二网络设备发送所述处理后的数据分组。具体可以实现上述步骤203中的发送功能,以及其他隐含步骤。
在一种可能的实现方式中,所述处理模块630,用于:
基于所述第一网络设备的网络等级地址、所述指示信息和所述第二网络设备的网络等级地址,确定所述变长源地址和所述变长目的地址是否满足地址段增补条件,如果满足地址段增补条件,则对所述变长源地址和所述变长目的地址进行地址段增补处理;
如果不满足所述地址段增补条件,基于所述第二网络设备的网络等级地址和所述指示信息,对所述变长源地址和所述变长目的地址进行地址段删减处理。
在一种可能的实现方式中,所述处理模块630,用于:
基于所述第二网络设备的网络等级地址和所述指示信息,确定所述变长源地址和所述变长目的地址是否满足地址段删减条件,如果满足所述地址段删减条件,则对所述变长源地址和所述变长目的地址进行地址段删减处理;
如果不满足所述地址段删减条件,基于第一网络设备的网络等级地址、所述指示信息和所述第二网络设备的网络等级地址,对所述变长源地址和所述变长目的地址进行地址段增补处理。
在一种可能的实现方式中,所述指示信息包括第一等级标识,所述第一等级标识用于指示所述变长源地址和所述变长目的地址中的起始地址段对应的网络区域等级L;
所述处理模块630,用于:
基于所述第一网络设备的网络等级地址、所述第一等级标识和所述第二网络设备的网络等级地址,确定所述变长源地址和所述变长目的地址是否满足地址段增补条件,如果满足地 址段增补条件,则对所述变长源地址和所述变长目的地址进行地址段增补处理;
如果不满足所述地址段增补条件,则基于所述第二网络设备的网络等级地址和所述第一等级标识,对所述变长源地址和所述变长目的地址进行地址段删减处理。
在一种可能的实现方式中,所述处理模块630,用于:
分别从所述第一网络设备的网络等级地址中的第1个第一地址段和所述第二网络设备的网络等级地址中的第1个第二地址段开始向后逐个获取地址段;
每获取一个第一地址段和一个第二地址段,将当前获取的第一地址段和第二地址段进行比较;
当当前获取的第一地址段与当前获取的第二地址段不同时,停止获取所述第一地址段和第二地址段,确定当前获取的第一地址段对应的网络区域等级X;
将所述第一网络设备的网络等级地址中的第X个地址段到第L-1个地址段确定为增补地址段,并添加至所述变长源地址和所述变长目的地址的前端。
在一种可能的实现方式中,所述处理模块630,用于:
在当前获取的第一地址段对应的网络区域等级为L-1之后,停止获取所述第一地址段和所述第二地址段,不对所述变长源地址和所述变长目的地址进行地址段增补处理;
确定所述目的地址的地址段的数目和所述第二网络设备的网络等级地址的地址段的数目中的较小数目P;
分别从所述第二网络设备的网络等级地址中的第L个第二地址段和所述变长目的地址中的第1个第三地址段开始向后逐个获取地址段;
每获取一个第二地址段和一个第三地址段,将当前获取的第二地址段和第三地址段进行比较;
当当前获取的第二地址段与当前获取的第三地址段不同时,停止获取所述第二地址段和所述第三地址段,确定当前获取的第二地址段对应的第一网络区域等级;
在当前获取的第二地址段对应的网络区域等级为P之后,停止获取所述第二地址段和所述第三地址段,如果当前获取的所述第二地址段和所述第三地址段相同,则确定当前获取的第二地址段的后一个地址段对应的第一网络区域等级;
确定所述源地址的地址段的数目和所述第二网络设备的网络等级地址的地址段的数目中的较小数目Q;
分别从所述第二网络设备的网络等级地址中的第L个第二地址段和所述变长源地址中的第1个第四地址段开始向后逐个获取地址段;
每获取一个第二地址段和一个第四地址段,将当前获取的第二地址段和第四地址段进行比较;
当当前获取的第二地址段与当前获取的第四地址段不同时,停止获取所述第二地址段和所述第四地址段,确定当前获取的第二地址段对应的第二网络区域等级;
在当前获取的第二地址段对应的网络区域等级为P之后,停止获取所述第二地址段和所述第四地址段,如果当前获取的所述第二地址段和所述第四地址段相同,则确定当前获取的第二地址段的后一个地址段对应的第二网络区域等级;
确定所述第一网络区域等级和所述第二网络区域等级中的较小网络区域等级Y;
将所述变长源地址和所述变长目的地址中的第1个地址段到网络区域等级Y-1对应的地 址段进行删减。
在一种可能的实现方式中,所述指示信息包括第二等级标识和第三等级标识,所述第二等级标识用于指示所述变长源地址中的起始地址段对应的网络区域等级M,所述第三等级标识用于指示所述变长目的地址中的起始地址段对应的网络区域等级N;
所述处理模块630,用于:
基于所述第一网络设备的网络等级地址、所述第二等级标识和所述第二网络设备的网络等级地址,确定所述变长目的地址是否满足第一地址段增补条件,如果所述变长目的地址满足所述第一地址段增补条件,则对所述变长目的地址进行地址段增补处理;
基于所述第一网络设备的网络等级地址、所述第三等级标识和所述第二网络设备的网络等级地址,确定所述变长源地址是否满足第二地址段增补条件,如果所述变长源地址满足所述第二地址段增补条件,则对所述变长源地址进行地址段增补处理;
如果所述变长目的地址不满足所述第一地址段增补条件,则基于所述第二网络设备的网络等级地址和所述第二等级标识,对所述变长目的地址进行地址段删减处理;
如果所述变长源地址不满足所述第二地址段增补条件,则基于所述第二网络设备的网络等级地址和所述第三等级标识,对所述变长源地址进行地址段删减处理。
在一种可能的实现方式中,所述处理模块630,用于:
分别从所述第一网络设备的网络等级地址中的第1个第一地址段和所述第二网络设备的网络等级地址中的第1个第二地址段开始向后逐个获取地址段;
每获取一个第一地址段和一个第二地址段,将当前获取的第一地址段和第二地址段进行比较;
当当前获取的第一地址段与当前获取的第二地址段不同时,停止获取所述第一地址段和第二地址段,确定当前获取的第一地址段对应的网络区域等级X′;
将所述第一网络设备的网络等级地址中的第X′个地址段到第M-1个地址段确定为增补地址段,并添加至所述变长目的地址的前端;
分别从所述第一网络设备的网络等级地址中的第1个第一地址段和所述第二网络设备的网络等级地址中的第1个第二地址段开始向后逐个获取地址段;
每获取一个第一地址段和一个第二地址段,将当前获取的第一地址段和第二地址段进行比较;
当当前获取的第一地址段与当前获取的第二地址段不同时,停止获取所述第一地址段和第二地址段,确定当前获取的第一地址段对应的网络区域等级X″;
将所述第一网络设备的网络等级地址中的第X″个地址段到第N-1个地址段确定为增补地址段,并添加至所述变长源地址的前端。
在一种可能的实现方式中,所述处理模块630,用于:
在当前获取的第一地址段对应的网络区域等级为M-1之后,停止获取所述第一地址段和所述第二地址段,不对所述变长目的地址进行地址段增补处理;
确定所述目的地址的地址段的数目和所述第二网络设备的网络等级地址的地址段的数目中的较小数目P′;
分别从所述第二网络设备的网络等级地址中的第M个第二地址段和所述变长目的地址中的第1个第三地址段开始向后逐个获取地址段;
每获取一个第二地址段和一个第三地址段,将当前获取的第二地址段和第三地址段进行比较;
当当前获取的第二地址段与当前获取的第三地址段不同时,停止获取所述第二地址段和所述第三地址段,确定当前获取的第二地址段对应的第一网络区域等级Y′;
在获取的第二地址段对应的网络区域等级为P′之后,停止获取所述第二地址段和所述第三地址段,如果当前获取的所述第二地址段和所述第三地址段相同,则确定当前获取的第二地址段的后一个地址段对应的第一网络区域等级Y′;
将所述变长目的地址中的第1个地址段到网络区域等级Y′-1对应的地址段进行删减;
所述如果所述变长源地址不满足所述第二地址段增补条件,则基于所述第二网络设备的网络等级地址和所述第三等级标识,对所述变长源地址进行地址段删减处理,包括:
在当前获取的第一地址段对应的网络区域等级为N-1之后,停止获取所述第一地址段和所述第二地址段,不对所述变长目的地址进行地址段增补处理;
确定所述目的地址的地址段的数目和所述第二网络设备的网络等级地址的地址段的数目中的较小数目Q′;
分别从所述第二网络设备的网络等级地址中的第N个第二地址段和所述变长目的地址中的第1个第三地址段开始向后逐个获取地址段;
每获取一个第二地址段和一个第三地址段,将当前获取的第二地址段和第三地址段进行比较;
当当前获取的第二地址段与当前获取的第三地址段不同时,停止获取所述第二地址段和所述第四地址段,确定当前获取的第二地址段对应的第二网络区域等级;
在获取的第二地址段对应的网络区域等级为Q′之后,停止获取所述第二地址段和所述第四地址段,如果当前获取的所述第二地址段和所述第四地址段相同,则确定当前获取的第二地址段的后一个地址段对应的第二网络区域等级Y″;
将所述变长源地址中的第1个地址段到网络区域等级Y″-1对应的地址段进行删减。
在一种可能的实现方式中,所述确定模块620,用于:
在所述第一网络设备的网络等级地址中,确定出所述指示信息所指示的网络区域等级对应的地址段之前的目的地址段;
将所述目的地址段添加至所述变长目的地址的前端,得到所述目的地址;
基于所述目的地址和存储的路由表,确定所述第一网络设备中用于发送所述数据分组的目标端口的端口标识,其中,所述目标端口与所述数据分组对应的下一跳的第二网络设备连接;
基于所述目标端口的端口标识,获取所述第二网络设备的网络等级地址;
所述发送模块,用于:
通过所述目标端口,向所述第二网络设备发送所述处理后的数据分组。
在一种可能的实现方式中,所述确定模块620,用于:
在存储的所述第一网络设备的各端口的端口标识,与每个端口标识对应的端口所连接的网络设备的网络等级地址的对应关系中,获取所述目标端口的端口标识对应的网络等级地址,作为所述第二网络设备的网络等级地址。
在一种可能的实现方式中,所述确定模块620,用于:
通过所述目标端口,向所述第二网络设备发送网络等级地址获取请求
接收所述第二网络设备返回的所述第二网络设备的网络等级地址。
需要说明的是,上述实施例提供的数据传输的装置在进行数据传输时,仅以上述各功能模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能模块完成,即将第一网络设备的内部结构划分成不同的功能模块,以完成以上描述的全部或者部分功能。另外,上述实施例提供的数据传输装置与数据传输的方法实施例属于同一构思,其具体实现过程详见方法实施例,这里不再赘述。
基于相同的技术构思,本申请实施例还提供了一种数据传输的装置,如图7所示,该装置包括:获取模块710、确定模块720、生成模块730和发送模块740,其中:
获取模块710,用于获取待发送的数据的源地址和目的地址。具体可以实现上述步骤501中的获取功能,以及其他隐含步骤。
确定模块720,用于基于所述源地址和目的地址,生成变长源地址、变长目的地址和对应的指示信息,其中,变长源地址、变长目的地址和指示信息,所述变长源地址是在所述数据分组的源地址中删减前端的部分地址段或不删减地址段得到的,所述变长目的地址是在所述数据分组的目的地址中删减前端的部分地址段或不删减地址段得到的,所述指示信息用于指示所述变长源地址和所述变长目的地址中的起始地址段对应的网络区域等级。具体可以实现上述步骤501中的确定功能,以及其他隐含步骤。
生成模块730,用于生成携带有所述数据、所述变长源地址、所述变长目的地址和所述指示信息.具体可以实现上述步骤503中的生成功能,以及其他隐含步骤。
发送模块740,用于基于所述目的地址,发送所述数据分组。具体可以实现上述步骤504中的发送功能,以及其他隐含步骤。
在一种可能的实现方式中,所述指示信息包括第一等级标识,所述第一等级标识用于指示所述变长源地址和所述变长目的地址中的起始地址段对应的网络区域等级;
所述确定模块720,用于:
基于所述源地址和目的地址,生成变长源地址、变长目的地址和对应的第一等级标识。
在一种可能的实现方式中,所述确定模块720,用于:
确定所述源地址的地址段的数目和所述目的地址的地址段的数目中的较小数目A;
分别从所述目的地址中的第1个第五地址段和源地址中的第1个第六地址段开始向后逐个获取地址段;
每获取一个第五地址段和一个第六地址段,将当前获取的第五地址段和第六地址段进行比较;
当当前获取的第五地址段和第六地址段不同时,停止获取所述第五地址段和所述第六地址段,确定当前获取的第五地址段对应的第三网络区域等级B;
在当前获取的第五地址段对应的网络区域等级为A-2之后,停止获取所述第五地址段和所述第六地址段,如果当前获取的所述第五地址段和所述第六地址段相同,则确定当前获取的第五地址段的后一个地址段对应的第三网络区域等级B;
将所述源地址和所述目的地址中的第1个地址段到网络区域等级B-1对应的地址段进行删减,得到变长源地址和变长目的地址,并确定网络区域等级B对应的第一等级标识。
在一种可能的实现方式中,所述指示信息包括第二等级标识和第三等级标识,所述第二等级标识用于指示所述变长源地址中的起始地址段对应的网络区域等级,所述第三等级标识用于指示所述变长目的地址中的起始地址段对应的网络区域等级;
所述确定模块720,用于:
基于所述源地址,生成变长源地址和对应的第三等级标识;
基于所述源地址和所述目的地址,生成变变长目的地址和对应的第二等级标识。
在一种可能的实现方式中,所述确定模块720,用于:
将所述源地址中的除最后两个地址段之外的地址段,进行删减,得到变长源地址,并确定所述变长源地址中的起始地址段对应的第三等级标识;
确定所述源地址的地址段的数目和所述目的地址的地址段的数目中的较小数目A;
分别从所述目的地址中的第1个第五地址段和源地址中的第1个第六地址段开始向后逐个获取地址段;
每获取一个第五地址段和一个第六地址段,将当前获取的第五地址段和第六地址段进行比较;
当当前获取的第五地址段和第六地址段不同时,停止获取所述第五地址段和所述第六地址段,确定当前获取的第五地址段对应的第三网络区域等级B;
在当前获取的第五地址段对应的网络区域等级为A-2之后,停止获取所述第五地址段和所述第六地址段,如果当前获取的所述第五地址段和所述第六地址段相同,则确定当前获取的第五地址段的后一个地址段对应的第三网络区域等级B;
将所述源地址和所述目的地址中的第1个地址段到网络区域等级B-1对应的地址段进行删减,得到变长目的地址,并确定所述变长目的地址中的起始地址段对应的第二等级标识。
需要说明的是,上述实施例提供的数据传输的装置在进行数据传输时,仅以上述各功能模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能模块完成,即将源网络设备的内部结构划分成不同的功能模块,以完成以上描述的全部或者部分功能。另外,上述实施例提供的数据传输装置与数据传输的方法实施例属于同一构思,其具体实现过程详见方法实施例,这里不再赘述。
图8是本申请实施例提供的一种网络设备800的示意图,该800可以为上述实施例中的第一网络设备。该网络设备800可以应用于图1所示的分级网络中。用于图2所示的数据传输的方法中第一网络设备所执行的操作。如图8所示,网络设备800可以包括处理器810,与所述处理器810耦合连接的存储器820,收发器830。处理器810可以是中央处理器(central processing unit,CPU),网络处理器(network processor,NP)或者CPU和NP的组合。处理器还可以进一步包括硬件芯片。上述硬件芯片可以是专用集成电路(application specific integrated circuit,ASIC),可编程逻辑器件(programmable logic device,PLD)或其组合。上述PLD可以是复杂可编程逻辑器件(complex programmable logic device,CPLD),现场可编程逻辑门阵列(field programmable gate array,FPGA)或其任意组合。处理器810可以是指一个处理器,也可以包括多个处理器。存储器820可以包括易失性存储器(英文:volatile memory),例如随机存取存储器(random access memory,RAM);存储器也可以包括非易失性存储器,例如只读存储器(read only memory,ROM);存储器还可以包括上述种类的存储 器的组合。存储器820可以是指一个存储器,也可以包括多个存储器。存储器820中存储有计算机可读指令,处理器810执行存储器820中的计算机可读指令后,可以按照所述计算机可读指令的指示,执行第一网络设备可以执行的全部操作。例如,第一网络设备在与图1对应的实施例中执行的操作。
图9是本申请实施例提供的一种源网络设备900的示意图。该源网络设备900可以应用于图1所示的分级网络中。用于图5所示的数据传输的方法中源网络设备所执行的操作。如图9所示,源网络设备900可以包括处理器910,与所述处理器910耦合连接的存储器920,收发器930。处理器910可以是中央处理器(central processing unit,CPU),网络处理器(network processor,NP)或者CPU和NP的组合。处理器还可以进一步包括硬件芯片。上述硬件芯片可以是专用集成电路(application specific integrated circuit,ASIC),可编程逻辑器件(programmable logic device,PLD)或其组合。上述PLD可以是复杂可编程逻辑器件(complex programmable logic device,CPLD),现场可编程逻辑门阵列(field programmable gate array,FPGA)或其任意组合。处理器910可以是指一个处理器,也可以包括多个处理器。存储器920可以包括易失性存储器,例如随机存取存储器(random access memory,RAM);存储器也可以包括非易失性存储器,例如只读存储器(read only memory,ROM);存储器还可以包括上述种类的存储器的组合。存储器920可以是指一个存储器,也可以包括多个存储器。存储器920中存储有计算机可读指令,处理器910执行存储器920中的计算机可读指令后,可以按照所述计算机可读指令的指示,执行第一网络设备可以执行的全部操作。例如,源网络设备在与图5对应的实施例中执行的操作。
在上述实施例中,可以全部或部分地通过软件、硬件、固件或者其任意组合来实现,当使用软件实现时,可以全部或部分地以计算机程序产品的形式实现。所述计算机程序产品包括一个或多个计算机指令,在设备上加载和执行所述计算机程序指令时,全部或部分地产生按照本申请实施例所述的流程或功能。所述计算机指令可以存储在计算机可读存储介质中,或者从一个计算机可读存储介质向另一个计算机可读存储介质传输,例如,所述计算机指令可以从一个网站站点、计算机、服务器或数据中心通过有线(例如同轴光缆、光纤、数字用户线)或无线(例如红外、无线、微波等)方式向另一个网站站点、计算机、服务器或数据中心进行传输。所述计算机可读存储介质可以是设备能够存取的任何可用介质或者是包含一个或多个可用介质集成的服务器、数据中心等数据存储设备。所述可用介质可以是磁性介质(如软盘、硬盘和磁带等),也可以是光介质(如数字视盘(Digital Video Disk,DVD)等),或者半导体介质(如固态硬盘等)。
本领域普通技术人员可以理解实现上述实施例的全部或部分步骤可以通过硬件来完成,也可以通过程序来指令相关的硬件完成,所述的程序可以存储于一种计算机可读存储介质中,上述提到的存储介质可以是只读存储器,磁盘或光盘等。
以上所述仅为本申请一个实施例,并不用以限制本申请,凡在本申请的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本申请的保护范围之内。

Claims (36)

  1. 一种数据传输的方法,其特征在于,所述方法应用于第一网络设备,所述方法包括:
    获取数据分组,其中,所述数据分组中携带有变长源地址、变长目的地址和指示信息,所述变长源地址包括所述数据分组的源地址的部分或全部地址段,所述变长目的地址包括所述数据分组的目的地址的部分或全部地址段,所述指示信息用于指示所述变长源地址和所述变长目的地址中的起始地址段对应的网络区域等级;
    基于所述变长目的地址和所述指示信息,确定所述数据分组对应的下一跳的第二网络设备的网络等级地址;
    基于所述第二网络设备的网络等级地址和所述指示信息,对所述数据分组中的变长源地址和变长目的地址进行地址段增减处理,并对所述数据分组中指示信息进行更新处理,得到处理后的数据分组;
    向所述第二网络设备发送所述处理后的数据分组。
  2. 根据权利要求1所述的方法,其特征在于,所述基于所述第二网络设备的网络等级地址和所述指示信息,对所述数据分组中的变长源地址和变长目的地址进行地址段增减处理,包括:
    基于所述第一网络设备的网络等级地址、所述指示信息和所述第二网络设备的网络等级地址,确定所述变长源地址和所述变长目的地址是否满足地址段增补条件,如果满足所述地址段增补条件,则对所述变长源地址和所述变长目的地址进行地址段增补处理;
    如果不满足所述地址段增补条件,基于所述第二网络设备的网络等级地址和所述指示信息,对所述变长源地址和所述变长目的地址进行地址段删减处理。
  3. 根据权利要求1所述的方法,其特征在于,所述基于所述第二网络设备的网络等级地址和所述指示信息,对所述数据分组中的变长源地址和变长目的地址进行地址段增减处理,包括:
    基于所述第二网络设备的网络等级地址和所述指示信息,确定所述变长源地址和所述变长目的地址是否满足地址段删减条件,如果满足所述地址段删减条件,则对所述变长源地址和所述变长目的地址进行地址段删减处理;
    如果不满足所述地址段删减条件,基于第一网络设备的网络等级地址、所述指示信息和所述第二网络设备的网络等级地址,对所述变长源地址和所述变长目的地址进行地址段增补处理。
  4. 根据权利要求2所述的方法,其特征在于,所述指示信息包括第一等级标识,所述第一等级标识用于指示所述变长源地址和所述变长目的地址中的起始地址段对应的网络区域等级L;
    所述基于所述第一网络设备的网络等级地址、所述指示信息和所述第二网络设备的网络等级地址,确定所述变长源地址和所述变长目的地址是否满足地址段增补条件,如果满足所 述地址段增补条件,则对所述变长源地址和所述变长目的地址进行地址段增补处理,包括:
    基于所述第一网络设备的网络等级地址、所述第一等级标识和所述第二网络设备的网络等级地址,确定所述变长源地址和所述变长目的地址是否满足地址段增补条件,如果满足所述地址段增补条件,则对所述变长源地址和所述变长目的地址进行地址段增补处理;
    所述如果不满足所述地址段增补条件,基于所述第二网络设备的网络等级地址和所述指示信息,对所述变长源地址和所述变长目的地址进行地址段删减处理,包括:
    如果不满足所述地址段增补条件,则基于所述第二网络设备的网络等级地址和所述第一等级标识,对所述变长源地址和所述变长目的地址进行地址段删减处理。
  5. 根据权利要求4所述的方法,其特征在于,所述基于所述第一网络设备的网络等级地址、所述第一等级标识和所述第二网络设备的网络等级地址,确定所述变长源地址和所述变长目的地址是否满足地址段增补条件,如果满足地址段增补条件,则对所述变长源地址和所述变长目的地址进行地址段增补处理,包括:
    分别从所述第一网络设备的网络等级地址中的第1个第一地址段和所述第二网络设备的网络等级地址中的第1个第二地址段开始向后逐个获取地址段;
    每获取一个第一地址段和一个第二地址段,将当前获取的第一地址段和第二地址段进行比较;
    当当前获取的第一地址段与当前获取的第二地址段不同时,停止获取所述第一地址段和第二地址段,确定当前获取的第一地址段对应的网络区域等级X;
    将所述第一网络设备的网络等级地址中的第X个地址段到第L-1个地址段确定为增补地址段,并添加至所述变长源地址和所述变长目的地址的前端。
  6. 根据权利要求5所述的方法,其特征在于,所述如果不满足所述地址段增补条件,则基于所述第二网络设备的网络等级地址和所述第一等级标识,对所述变长源地址和所述变长目的地址进行地址段删减处理,包括:
    在当前获取的第一地址段对应的网络区域等级为L-1之后,停止获取所述第一地址段和所述第二地址段,不对所述变长源地址和所述变长目的地址进行地址段增补处理;
    确定所述目的地址的地址段的数目和所述第二网络设备的网络等级地址的地址段的数目中的较小数目P;
    分别从所述第二网络设备的网络等级地址中的第L个第二地址段和所述变长目的地址中的第1个第三地址段开始向后逐个获取地址段;
    每获取一个第二地址段和一个第三地址段,将当前获取的第二地址段和第三地址段进行比较;
    当当前获取的第二地址段与当前获取的第三地址段不同时,停止获取所述第二地址段和所述第三地址段,确定当前获取的第二地址段对应的第一网络区域等级;
    在当前获取的第二地址段对应的网络区域等级为P之后,停止获取所述第二地址段和所述第三地址段,如果当前获取的所述第二地址段和所述第三地址段相同,则确定当前获取的第二地址段的后一个地址段对应的第一网络区域等级;
    确定所述源地址的地址段的数目和所述第二网络设备的网络等级地址的地址段的数目中 的较小数目Q;
    分别从所述第二网络设备的网络等级地址中的第L个第二地址段和所述变长源地址中的第1个第四地址段开始向后逐个获取地址段;
    每获取一个第二地址段和一个第四地址段,将当前获取的第二地址段和第四地址段进行比较;
    当当前获取的第二地址段与当前获取的第四地址段不同时,停止获取所述第二地址段和所述第四地址段,确定当前获取的第二地址段对应的第二网络区域等级;
    在当前获取的第二地址段对应的网络区域等级为P之后,停止获取所述第二地址段和所述第四地址段,如果当前获取的所述第二地址段和所述第四地址段相同,则确定当前获取的第二地址段的后一个地址段对应的第二网络区域等级;
    确定所述第一网络区域等级和所述第二网络区域等级中的较小网络区域等级Y;
    将所述变长源地址和所述变长目的地址中的第1个地址段到网络区域等级Y-1对应的地址段进行删减。
  7. 根据权利要求2所述的方法,其特征在于,所述指示信息包括第二等级标识和第三等级标识,所述第二等级标识用于指示所述变长源地址中的起始地址段对应的网络区域等级M,所述第三等级标识用于指示所述变长目的地址中的起始地址段对应的网络区域等级N;
    所述基于所述第一网络设备的网络等级地址、所述指示信息和所述第二网络设备的网络等级地址,则对所述变长源地址和所述变长目的地址进行地址段增补处理,包括:
    基于所述第一网络设备的网络等级地址、所述第二等级标识和所述第二网络设备的网络等级地址,确定所述变长目的地址是否满足第一地址段增补条件,如果所述变长目的地址满足所述第一地址段增补条件,则对所述变长目的地址进行地址段增补处理;
    基于所述第一网络设备的网络等级地址、所述第三等级标识和所述第二网络设备的网络等级地址,确定所述变长源地址是否满足第二地址段增补条件,如果所述变长源地址满足所述第二地址段增补条件,则对所述变长源地址进行地址段增补处理;
    所述如果不满足所述地址段增补条件,则基于所述第二网络设备的网络等级地址和所述指示信息,对所述变长源地址和所述变长目的地址进行地址段删减处理,包括:
    如果所述变长目的地址不满足所述第一地址段增补条件,则基于所述第二网络设备的网络等级地址和所述第二等级标识,对所述变长目的地址进行地址段删减处理;
    如果所述变长源地址不满足所述第二地址段增补条件,则基于所述第二网络设备的网络等级地址和所述第三等级标识,对所述变长源地址进行地址段删减处理。
  8. 根据权利要求7所述的方法,其特征在于,所述基于所述第一网络设备的网络等级地址、所述第二等级标识和所述第二网络设备的网络等级地址,确定所述变长目的地址是否满足第一地址段增补条件,如果所述变长目的地址满足所述第一地址段增补条件,则对所述变长目的地址进行地址段增补处理,包括:
    分别从所述第一网络设备的网络等级地址中的第1个第一地址段和所述第二网络设备的网络等级地址中的第1个第二地址段开始向后逐个获取地址段;
    每获取一个第一地址段和一个第二地址段,将当前获取的第一地址段和第二地址段进行比较;
    当当前获取的第一地址段与当前获取的第二地址段不同时,停止获取所述第一地址段和第二地址段,确定当前获取的第一地址段对应的网络区域等级X′;
    将所述第一网络设备的网络等级地址中的第X′个地址段到第M-1个地址段确定为增补地址段,并添加至所述变长目的地址的前端;
    所述基于所述第一网络设备的网络等级地址、所述第三等级标识和所述第二网络设备的网络等级地址,确定所述变长源地址是否满足第二地址段增补条件,如果所述变长源地址满足所述第二地址段增补条件,则对所述变长源地址进行地址段增补处理,包括:
    分别从所述第一网络设备的网络等级地址中的第1个第一地址段和所述第二网络设备的网络等级地址中的第1个第二地址段开始向后逐个获取地址段;
    每获取一个第一地址段和一个第二地址段,将当前获取的第一地址段和第二地址段进行比较;
    当当前获取的第一地址段与当前获取的第二地址段不同时,停止获取所述第一地址段和第二地址段,确定当前获取的第一地址段对应的网络区域等级X″;
    将所述第一网络设备的网络等级地址中的第X″个地址段到第N-1个地址段确定为增补地址段,并添加至所述变长源地址的前端。
  9. 根据权利要求8所述的方法,其特征在于,所述如果所述变长目的地址不满足所述第一地址段增补条件,则基于所述第二网络设备的网络等级地址和所述第二等级标识,对所述变长目的地址进行地址段删减处理,包括:
    在当前获取的第一地址段对应的网络区域等级为M-1之后,停止获取所述第一地址段和所述第二地址段,不对所述变长目的地址进行地址段增补处理;
    确定所述目的地址的地址段的数目和所述第二网络设备的网络等级地址的地址段的数目中的较小数目P′;
    分别从所述第二网络设备的网络等级地址中的第M个第二地址段和所述变长目的地址中的第1个第三地址段开始向后逐个获取地址段;
    每获取一个第二地址段和一个第三地址段,将当前获取的第二地址段和第三地址段进行比较;
    当当前获取的第二地址段与当前获取的第三地址段不同时,停止获取所述第二地址段和所述第三地址段,确定当前获取的第二地址段对应的第一网络区域等级Y′;
    在获取的第二地址段对应的网络区域等级为P′之后,停止获取所述第二地址段和所述第三地址段,如果当前获取的所述第二地址段和所述第三地址段相同,则确定当前获取的第二地址段的后一个地址段对应的第一网络区域等级Y′;
    将所述变长目的地址中的第1个地址段到网络区域等级Y′-1对应的地址段进行删减;
    所述如果所述变长源地址不满足所述第二地址段增补条件,则基于所述第二网络设备的网络等级地址和所述第三等级标识,对所述变长源地址进行地址段删减处理,包括:
    在当前获取的第一地址段对应的网络区域等级为N-1之后,停止获取所述第一地址段和所述第二地址段,不对所述变长目的地址进行地址段增补处理;
    确定所述目的地址的地址段的数目和所述第二网络设备的网络等级地址的地址段的数目中的较小数目Q′;
    分别从所述第二网络设备的网络等级地址中的第N个第二地址段和所述变长目的地址中的第1个第三地址段开始向后逐个获取地址段;
    每获取一个第二地址段和一个第三地址段,将当前获取的第二地址段和第三地址段进行比较;
    当当前获取的第二地址段与当前获取的第三地址段不同时,停止获取所述第二地址段和所述第四地址段,确定当前获取的第二地址段对应的第二网络区域等级;
    在获取的第二地址段对应的网络区域等级为Q′之后,停止获取所述第二地址段和所述第四地址段,如果当前获取的所述第二地址段和所述第四地址段相同,则确定当前获取的第二地址段的后一个地址段对应的第二网络区域等级Y″;
    将所述变长源地址中的第1个地址段到网络区域等级Y″-1对应的地址段进行删减。
  10. 根据权利要求1-9中任一项所述的方法,其特征在于,所述基于所述变长目的地址和所述指示信息,确定所述数据分组对应的下一跳的第二网络设备的网络等级地址,包括:
    在所述第一网络设备的网络等级地址中,确定出所述指示信息所指示的网络区域等级对应的地址段之前的目的地址段;
    将所述目的地址段添加至所述变长目的地址的前端,得到所述目的地址;
    基于所述目的地址和存储的路由表,确定所述第一网络设备中用于发送所述数据分组的目标端口的端口标识,其中,所述目标端口与所述数据分组对应的下一跳的第二网络设备连接;
    基于所述目标端口的端口标识,获取所述第二网络设备的网络等级地址;
    所述向所述第二网络设备发送所述处理后的数据分组,包括:
    通过所述目标端口,向所述第二网络设备发送所述处理后的数据分组。
  11. 根据权利要求10所述的方法,其特征在于,所述基于所述目标端口,获取所述第二网络设备的网络等级地址,包括:
    在存储的所述第一网络设备的各端口的端口标识,与每个端口标识对应的端口所连接的网络设备的网络等级地址的对应关系中,获取所述目标端口的端口标识对应的网络等级地址,作为所述第二网络设备的网络等级地址。
  12. 根据权利要求10所述的方法,其特征在于,所述基于所述目标端口,获取所述第二网络设备的网络等级地址,包括:
    通过所述目标端口,向所述第二网络设备发送网络等级地址获取请求;
    接收所述第二网络设备返回的所述第二网络设备的网络等级地址。
  13. 一种数据传输的方法,其特征在于,所述方法应用于源网络设备,所述方法包括:
    获取待发送的数据的源地址和目的地址;
    基于所述源地址和目的地址,生成变长源地址、变长目的地址和对应的指示信息,其中,所述变长源地址是在所述数据分组的源地址中删减前端的部分地址段或不删减地址段得到的,所述变长目的地址是在所述数据分组的目的地址中删减前端的部分地址段或不删减地址 段得到的,所述指示信息用于指示所述变长源地址和所述变长目的地址中的起始地址段对应的网络区域等级;
    生成携带有所述数据、所述变长源地址、所述变长目的地址和所述指示信息的数据分组;
    基于所述目的地址,发送所述数据分组。
  14. 根据权利要求13所述的方法,其特征在于,所述指示信息包括第一等级标识,所述第一等级标识用于指示所述变长源地址和所述变长目的地址中的起始地址段对应的网络区域等级;
    所述基于所述源地址和目的地址,生成变长源地址、变长目的地址和对应的指示信息,包括:
    基于所述源地址和目的地址,生成变长源地址、变长目的地址和对应的第一等级标识。
  15. 根据权利要求14所述的方法,其特征在于,所述基于所述源地址和目的地址,生成变长源地址、变长目的地址和对应的第一等级标识,包括:
    确定所述源地址的地址段的数目和所述目的地址的地址段的数目中的较小数目A;
    分别从所述目的地址中的第1个第五地址段和源地址中的第1个第六地址段开始向后逐个获取地址段;
    每获取一个第五地址段和一个第六地址段,将当前获取的第五地址段和第六地址段进行比较;
    当当前获取的第五地址段和第六地址段不同时,停止获取所述第五地址段和所述第六地址段,确定当前获取的第五地址段对应的第三网络区域等级B;
    在当前获取的第五地址段对应的网络区域等级为A-2之后,停止获取所述第五地址段和所述第六地址段,如果当前获取的所述第五地址段和所述第六地址段相同,则确定当前获取的第五地址段的后一个地址段对应的第三网络区域等级B;
    将所述源地址和所述目的地址中的第1个地址段到网络区域等级B-1对应的地址段进行删减,得到变长源地址和变长目的地址,并确定网络区域等级B对应的第一等级标识。
  16. 根据权利要求13所述的方法,其特征在于,所述指示信息包括第二等级标识和第三等级标识,所述第二等级标识用于指示所述变长源地址中的起始地址段对应的网络区域等级,所述第三等级标识用于指示所述变长目的地址中的起始地址段对应的网络区域等级;
    所述基于所述源地址和目的地址,生成变长源地址、变长目的地址和对应的指示信息,包括:
    基于所述源地址,生成变长源地址和对应的第三等级标识;
    基于所述源地址和所述目的地址,生成变变长目的地址和对应的第二等级标识。
  17. 根据权利要求15所述的方法,其特征在于,所述基于所述源地址,生成变长源地址和对应的第三等级标识,包括:
    将所述源地址中的除最后两个地址段之外的地址段,进行删减,得到变长源地址,并确定所述变长源地址中的起始地址段对应的第三等级标识;
    所述基于所述源地址和所述目的地址,生成变变长目的地址和对应的第三等级标识,包括:
    确定所述源地址的地址段的数目和所述目的地址的地址段的数目中的较小数目A;
    分别从所述目的地址中的第1个第五地址段和源地址中的第1个第六地址段开始向后逐个获取地址段;
    每获取一个第五地址段和一个第六地址段,将当前获取的第五地址段和第六地址段进行比较;
    当当前获取的第五地址段和第六地址段不同时,停止获取所述第五地址段和所述第六地址段,确定当前获取的第五地址段对应的第三网络区域等级B;
    在当前获取的第五地址段对应的网络区域等级为A-2之后,停止获取所述第五地址段和所述第六地址段,如果当前获取的所述第五地址段和所述第六地址段相同,则确定当前获取的第五地址段的后一个地址段对应的第三网络区域等级B;
    将所述源地址和所述目的地址中的第1个地址段到网络区域等级B-1对应的地址段进行删减,得到变长目的地址,并确定所述变长目的地址中的起始地址段对应的第二等级标识。
  18. 一种数据传输的装置,其特征在于,所述装置包括:
    获取模块,用于获取数据分组,其中,所述数据分组中携带有变长源地址、变长目的地址和指示信息,所述变长源地址是在所述数据分组的源地址中删减前端的部分地址段或不删减地址段得到的,所述变长目的地址是在所述数据分组的目的地址中删减前端的部分地址段或不删减地址段得到的,所述指示信息用于指示所述变长源地址和所述变长目的地址中的起始地址段对应的网络区域等级;
    确定模块,用于基于所述变长目的地址和所述指示信息,确定所述数据分组对应的下一跳的第二网络设备的网络等级地址;
    处理模块,用于基于所述第二网络设备的网络等级地址和所述指示信息,对所述数据分组中的变长源地址和变长目的地址进行地址段增减处理,并对所述数据分组中指示信息进行更新处理,得到处理后的数据分组;
    发送模块,用于向所述第二网络设备发送所述处理后的数据分组。
  19. 根据权利要求18所述的装置,其特征在于,所述处理模块,用于:
    基于所述第二网络设备的网络等级地址和所述指示信息,确定所述变长源地址和所述变长目的地址是否满足地址段删减条件,如果满足所述地址段删减条件,则对所述变长源地址和所述变长目的地址进行地址段删减处理;
    如果不满足所述地址段删减条件,基于第一网络设备的网络等级地址、所述指示信息和所述第二网络设备的网络等级地址,对所述变长源地址和所述变长目的地址进行地址段增补处理。
  20. 根据权利要求18所述的装置,其特征在于,所述处理模块,用于:
    基于所述第一网络设备的网络等级地址、所述指示信息和所述第二网络设备的网络等级地址,确定所述变长源地址和所述变长目的地址是否满足地址段增补条件,如果满足地址段增补条件,则对所述变长源地址和所述变长目的地址进行地址段增补处理;
    如果不满足所述地址段增补条件,基于所述第二网络设备的网络等级地址和所述指示信息,对所述变长源地址和所述变长目的地址进行地址段删减处理。
  21. 根据权利要求20所述的装置,其特征在于,所述指示信息包括第一等级标识,所述第一等级标识用于指示所述变长源地址和所述变长目的地址中的起始地址段对应的网络区域等级L;
    所述处理模块,用于:
    基于所述第一网络设备的网络等级地址、所述第一等级标识和所述第二网络设备的网络等级地址,确定所述变长源地址和所述变长目的地址是否满足地址段增补条件,如果满足地址段增补条件,则对所述变长源地址和所述变长目的地址进行地址段增补处理;
    如果不满足所述地址段增补条件,则基于所述第二网络设备的网络等级地址和所述第一等级标识,对所述变长源地址和所述变长目的地址进行地址段删减处理。
  22. 根据权利要求21所述的装置,其特征在于,所述处理模块,用于:
    分别从所述第一网络设备的网络等级地址中的第1个第一地址段和所述第二网络设备的网络等级地址中的第1个第二地址段开始向后逐个获取地址段;
    每获取一个第一地址段和一个第二地址段,将当前获取的第一地址段和第二地址段进行比较;
    当当前获取的第一地址段与当前获取的第二地址段不同时,停止获取所述第一地址段和第二地址段,确定当前获取的第一地址段对应的网络区域等级X;
    将所述第一网络设备的网络等级地址中的第X个地址段到第L-1个地址段确定为增补地址段,并添加至所述变长源地址和所述变长目的地址的前端。
  23. 根据权利要求22所述的装置,其特征在于,所述处理模块,用于:
    在当前获取的第一地址段对应的网络区域等级为L-1之后,停止获取所述第一地址段和所述第二地址段,不对所述变长源地址和所述变长目的地址进行地址段增补处理;
    确定所述目的地址的地址段的数目和所述第二网络设备的网络等级地址的地址段的数目中的较小数目P;
    分别从所述第二网络设备的网络等级地址中的第L个第二地址段和所述变长目的地址中的第1个第三地址段开始向后逐个获取地址段;
    每获取一个第二地址段和一个第三地址段,将当前获取的第二地址段和第三地址段进行比较;
    当当前获取的第二地址段与当前获取的第三地址段不同时,停止获取所述第二地址段和所述第三地址段,确定当前获取的第二地址段对应的第一网络区域等级;
    在当前获取的第二地址段对应的网络区域等级为P之后,停止获取所述第二地址段和所述第三地址段,如果当前获取的所述第二地址段和所述第三地址段相同,则确定当前获取的第二地址段的后一个地址段对应的第一网络区域等级;
    确定所述源地址的地址段的数目和所述第二网络设备的网络等级地址的地址段的数目中的较小数目Q;
    分别从所述第二网络设备的网络等级地址中的第L个第二地址段和所述变长源地址中的第1个第四地址段开始向后逐个获取地址段;
    每获取一个第二地址段和一个第四地址段,将当前获取的第二地址段和第四地址段进行比较;
    当当前获取的第二地址段与当前获取的第四地址段不同时,停止获取所述第二地址段和所述第四地址段,确定当前获取的第二地址段对应的第二网络区域等级;
    在当前获取的第二地址段对应的网络区域等级为P之后,停止获取所述第二地址段和所述第四地址段,如果当前获取的所述第二地址段和所述第四地址段相同,则确定当前获取的第二地址段的后一个地址段对应的第二网络区域等级;
    确定所述第一网络区域等级和所述第二网络区域等级中的较小网络区域等级Y;
    将所述变长源地址和所述变长目的地址中的第1个地址段到网络区域等级Y-1对应的地址段进行删减。
  24. 根据权利要求20所述的装置,其特征在于,所述指示信息包括第二等级标识和第三等级标识,所述第二等级标识用于指示所述变长源地址中的起始地址段对应的网络区域等级M,所述第三等级标识用于指示所述变长目的地址中的起始地址段对应的网络区域等级N;
    所述处理模块,用于:
    基于所述第一网络设备的网络等级地址、所述第二等级标识和所述第二网络设备的网络等级地址,确定所述变长目的地址是否满足第一地址段增补条件,如果所述变长目的地址满足所述第一地址段增补条件,则对所述变长目的地址进行地址段增补处理;
    基于所述第一网络设备的网络等级地址、所述第三等级标识和所述第二网络设备的网络等级地址,确定所述变长源地址是否满足第二地址段增补条件,如果所述变长源地址满足所述第二地址段增补条件,则对所述变长源地址进行地址段增补处理;
    如果所述变长目的地址不满足所述第一地址段增补条件,则基于所述第二网络设备的网络等级地址和所述第二等级标识,对所述变长目的地址进行地址段删减处理;
    如果所述变长源地址不满足所述第二地址段增补条件,则基于所述第二网络设备的网络等级地址和所述第三等级标识,对所述变长源地址进行地址段删减处理。
  25. 根据权利要求24所述的装置,其特征在于,所述处理模块,用于:
    分别从所述第一网络设备的网络等级地址中的第1个第一地址段和所述第二网络设备的网络等级地址中的第1个第二地址段开始向后逐个获取地址段;
    每获取一个第一地址段和一个第二地址段,将当前获取的第一地址段和第二地址段进行比较;
    当当前获取的第一地址段与当前获取的第二地址段不同时,停止获取所述第一地址段和第二地址段,确定当前获取的第一地址段对应的网络区域等级X′;
    将所述第一网络设备的网络等级地址中的第X′个地址段到第M-1个地址段确定为增补地址段,并添加至所述变长目的地址的前端;
    分别从所述第一网络设备的网络等级地址中的第1个第一地址段和所述第二网络设备的网络等级地址中的第1个第二地址段开始向后逐个获取地址段;
    每获取一个第一地址段和一个第二地址段,将当前获取的第一地址段和第二地址段进行比较;
    当当前获取的第一地址段与当前获取的第二地址段不同时,停止获取所述第一地址段和第二地址段,确定当前获取的第一地址段对应的网络区域等级X″;
    将所述第一网络设备的网络等级地址中的第X″个地址段到第N-1个地址段确定为增补地址段,并添加至所述变长源地址的前端。
  26. 根据权利要求25所述的装置,其特征在于,所述处理模块,用于:
    在当前获取的第一地址段对应的网络区域等级为M-1之后,停止获取所述第一地址段和所述第二地址段,不对所述变长目的地址进行地址段增补处理;
    确定所述目的地址的地址段的数目和所述第二网络设备的网络等级地址的地址段的数目中的较小数目P′;
    分别从所述第二网络设备的网络等级地址中的第M个第二地址段和所述变长目的地址中的第1个第三地址段开始向后逐个获取地址段;
    每获取一个第二地址段和一个第三地址段,将当前获取的第二地址段和第三地址段进行比较;
    当当前获取的第二地址段与当前获取的第三地址段不同时,停止获取所述第二地址段和所述第三地址段,确定当前获取的第二地址段对应的第一网络区域等级Y′;
    在获取的第二地址段对应的网络区域等级为P′之后,停止获取所述第二地址段和所述第三地址段,如果当前获取的所述第二地址段和所述第三地址段相同,则确定当前获取的第二地址段的后一个地址段对应的第一网络区域等级Y′;
    将所述变长目的地址中的第1个地址段到网络区域等级Y′-1对应的地址段进行删减;
    所述如果所述变长源地址不满足所述第二地址段增补条件,则基于所述第二网络设备的网络等级地址和所述第三等级标识,对所述变长源地址进行地址段删减处理,包括:
    在当前获取的第一地址段对应的网络区域等级为N-1之后,停止获取所述第一地址段和所述第二地址段,不对所述变长目的地址进行地址段增补处理;
    确定所述目的地址的地址段的数目和所述第二网络设备的网络等级地址的地址段的数目中的较小数目Q′;
    分别从所述第二网络设备的网络等级地址中的第N个第二地址段和所述变长目的地址中的第1个第三地址段开始向后逐个获取地址段;
    每获取一个第二地址段和一个第三地址段,将当前获取的第二地址段和第三地址段进行比较;
    当当前获取的第二地址段与当前获取的第三地址段不同时,停止获取所述第二地址段和所述第四地址段,确定当前获取的第二地址段对应的第二网络区域等级;
    在获取的第二地址段对应的网络区域等级为Q′之后,停止获取所述第二地址段和所述第四地址段,如果当前获取的所述第二地址段和所述第四地址段相同,则确定当前获取的第二地址段的后一个地址段对应的第二网络区域等级Y″;
    将所述变长源地址中的第1个地址段到网络区域等级Y″-1对应的地址段进行删减。
  27. 根据权利要求18-26中任一项所述的装置,其特征在于,所述确定模块,用于:
    在所述第一网络设备的网络等级地址中,确定出所述指示信息所指示的网络区域等级对应的地址段之前的目的地址段;
    将所述目的地址段添加至所述变长目的地址的前端,得到所述目的地址;
    基于所述目的地址和存储的路由表,确定所述第一网络设备中用于发送所述数据分组的目标端口的端口标识,其中,所述目标端口与所述数据分组对应的下一跳的第二网络设备连接;
    基于所述目标端口的端口标识,获取所述第二网络设备的网络等级地址;
    所述发送模块,用于:
    通过所述目标端口,向所述第二网络设备发送所述处理后的数据分组。
  28. 根据权利要求27所述的装置,其特征在于,所述确定模块,用于:
    在存储的所述第一网络设备的各端口的端口标识,与每个端口标识对应的端口所连接的网络设备的网络等级地址的对应关系中,获取所述目标端口的端口标识对应的网络等级地址,作为所述第二网络设备的网络等级地址。
  29. 根据权利要求27所述的装置,其特征在于,所述确定模块,用于:
    通过所述目标端口,向所述第二网络设备发送网络等级地址获取请求
    接收所述第二网络设备返回的所述第二网络设备的网络等级地址。
  30. 一种数据传输的装置,其特征在于,所述装置包括:
    获取模块,用于获取待发送的数据的源地址和目的地址;
    确定模块,用于基于所述源地址和目的地址,生成变长源地址、变长目的地址和对应的指示信息,其中,所述变长源地址是在所述数据分组的源地址中删减前端的部分地址段或不删减地址段得到的,所述变长目的地址是在所述数据分组的目的地址中删减前端的部分地址段或不删减地址段得到的,所述指示信息用于指示所述变长源地址和所述变长目的地址中的起始地址段对应的网络区域等级;
    生成模块,用于生成携带有所述数据、所述变长源地址、所述变长目的地址和所述指示信息的数据分组;
    发送模块,用于基于所述目的地址,发送所述数据分组。
  31. 根据权利要求30所述的装置,其特征在于,所述指示信息包括第一等级标识,所述第一等级标识用于指示所述变长源地址和所述变长目的地址中的起始地址段对应的网络区域等级;
    所述确定模块,用于:
    基于所述源地址和目的地址,生成变长源地址、变长目的地址和对应的第一等级标识。
  32. 根据权利要求31所述的装置,其特征在于,所述确定模块,用于:
    确定所述源地址的地址段的数目和所述目的地址的地址段的数目中的较小数目A;
    分别从所述目的地址中的第1个第五地址段和源地址中的第1个第六地址段开始向后逐个获取地址段;
    每获取一个第五地址段和一个第六地址段,将当前获取的第五地址段和第六地址段进行比较;
    当当前获取的第五地址段和第六地址段不同时,停止获取所述第五地址段和所述第六地址段,确定当前获取的第五地址段对应的第三网络区域等级B;
    在当前获取的第五地址段对应的网络区域等级为A-2之后,停止获取所述第五地址段和所述第六地址段,如果当前获取的所述第五地址段和所述第六地址段相同,则确定当前获取的第五地址段的后一个地址段对应的第三网络区域等级B;
    将所述源地址和所述目的地址中的第1个地址段到网络区域等级B-1对应的地址段进行删减,得到变长源地址和变长目的地址,并确定网络区域等级B对应的第一等级标识。
  33. 根据权利要求30所述的装置,其特征在于,所述指示信息包括第二等级标识和第三等级标识,所述第二等级标识用于指示所述变长源地址中的起始地址段对应的网络区域等级,所述第三等级标识用于指示所述变长目的地址中的起始地址段对应的网络区域等级;
    所述确定模块,用于:
    基于所述源地址,生成变长源地址和对应的第三等级标识;
    基于所述源地址和所述目的地址,生成变变长目的地址和对应的第二等级标识。
  34. 根据权利要求33所述的装置,其特征在于,所述确定模块,用于:
    将所述源地址中的除最后两个地址段之外的地址段,进行删减,得到变长源地址,并确定所述变长源地址中的起始地址段对应的第三等级标识;
    确定所述源地址的地址段的数目和所述目的地址的地址段的数目中的较小数目A;
    分别从所述目的地址中的第1个第五地址段和源地址中的第1个第六地址段开始向后逐个获取地址段;
    每获取一个第五地址段和一个第六地址段,将当前获取的第五地址段和第六地址段进行比较;
    当当前获取的第五地址段和第六地址段不同时,停止获取所述第五地址段和所述第六地址段,确定当前获取的第五地址段对应的第三网络区域等级B;
    在当前获取的第五地址段对应的网络区域等级为A-2之后,停止获取所述第五地址段和所述第六地址段,如果当前获取的所述第五地址段和所述第六地址段相同,则确定当前获取的第五地址段的后一个地址段对应的第三网络区域等级B;
    将所述源地址和所述目的地址中的第1个地址段到网络区域等级B-1对应的地址段进行删减,得到变长目的地址,并确定所述变长目的地址中的起始地址段对应的第二等级标识。
  35. 一种网络设备,其特征在于,所述网络设备包括:
    收发器,用于获取数据分组,其中,所述数据分组中携带有变长源地址、变长目的地址和指示信息,所述变长源地址是在所述数据分组的源地址中删减前端的部分地址段或不删减地址段得到的,所述变长目的地址是在所述数据分组的目的地址中删减前端的部分地址段或 不删减地址段得到的,所述指示信息用于指示所述变长源地址和所述变长目的地址中的起始地址段对应的网络区域等级;
    存储器,该存储器包括计算机可读指令;
    与所述存储器和所述收发器相连的处理器,所述处理器用于执行所述计算机可读指令,从而执行以下操作:
    基于所述变长目的地址和所述指示信息,确定所述数据分组对应的下一跳的第二网络设备的网络等级地址;
    基于所述第二网络设备的网络等级地址和所述指示信息,对所述数据分组中的变长源地址和变长目的地址进行地址段增减处理,并对所述数据分组中指示信息进行更新处理,得到处理后的数据分组;
    所述收发器,还用于向所述第二网络设备发送所述处理后的数据分组。
  36. 一种源网络设备,其特征在于,所述源网络设备包括:
    收发器,用于获取待发送的数据的源地址和目的地址;
    存储器,该存储器包括计算机可读指令;
    与所述存储器和所述收发器相连的处理器,所述处理器用于执行所述计算机可读指令,从而执行以下操作:
    基于所述源地址和目的地址,生成变长源地址、变长目的地址和对应的指示信息,其中,所述变长源地址是在所述数据分组的源地址中删减前端的部分地址段或不删减地址段得到的,所述变长目的地址是在所述数据分组的目的地址中删减前端的部分地址段或不删减地址段得到的,所述指示信息用于指示所述变长源地址和所述变长目的地址中的起始地址段对应的网络区域等级;
    生成携带有所述数据、所述变长源地址、所述变长目的地址和所述指示信息的数据分组;
    所述收发器,还用于基于所述目的地址,发送所述数据分组。
PCT/CN2021/071180 2020-01-15 2021-01-12 一种数据传输的方法和装置 WO2021143660A1 (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CN202010043669.4 2020-01-15
CN202010043669.4A CN113132239A (zh) 2020-01-15 2020-01-15 一种数据传输的方法和装置

Publications (1)

Publication Number Publication Date
WO2021143660A1 true WO2021143660A1 (zh) 2021-07-22

Family

ID=76771623

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2021/071180 WO2021143660A1 (zh) 2020-01-15 2021-01-12 一种数据传输的方法和装置

Country Status (2)

Country Link
CN (1) CN113132239A (zh)
WO (1) WO2021143660A1 (zh)

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20030026260A1 (en) * 2001-08-06 2003-02-06 Nobuo Ogasawara Packet routing apparatus and routing controller
US20030053441A1 (en) * 2001-09-14 2003-03-20 Sujata Banerjee Assigning IP addresses in an internet data center
CN1588898A (zh) * 2004-07-26 2005-03-02 毛德操 在互联网中按路径寻址和路由的方法
CN101616049A (zh) * 2009-08-04 2009-12-30 罗建华 大容量总线网络的分级通信管理
CN109698868A (zh) * 2017-10-20 2019-04-30 华为技术有限公司 Ip地址分配方法及装置、计算机程序及存储介质
CN110120985A (zh) * 2018-02-05 2019-08-13 华为技术有限公司 通信的方法和设备

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20030026260A1 (en) * 2001-08-06 2003-02-06 Nobuo Ogasawara Packet routing apparatus and routing controller
US20030053441A1 (en) * 2001-09-14 2003-03-20 Sujata Banerjee Assigning IP addresses in an internet data center
CN1588898A (zh) * 2004-07-26 2005-03-02 毛德操 在互联网中按路径寻址和路由的方法
CN101616049A (zh) * 2009-08-04 2009-12-30 罗建华 大容量总线网络的分级通信管理
CN109698868A (zh) * 2017-10-20 2019-04-30 华为技术有限公司 Ip地址分配方法及装置、计算机程序及存储介质
CN110120985A (zh) * 2018-02-05 2019-08-13 华为技术有限公司 通信的方法和设备

Also Published As

Publication number Publication date
CN113132239A (zh) 2021-07-16

Similar Documents

Publication Publication Date Title
US10574574B2 (en) System and method for BGP sFlow export
WO2020001393A1 (zh) 发送网络性能参数、计算网络性能的方法和网络节点
JP5377770B2 (ja) ネームアドレスマッピングシステム、データ伝送方法及びネームアドレスマッピングメンテナンス方法
JP5624331B2 (ja) コンピュータ実施方法
EP3057270A1 (en) Technologies for modular forwarding table scalability
CN113411243B (zh) 数据传输方法及装置
CN107113241B (zh) 路由确定方法、网络配置方法以及相关装置
WO2020156166A1 (zh) 用于处理报文的方法和装置
US8923298B2 (en) Optimized trie-based address lookup
US7801151B2 (en) Method and apparatus for forwarding service in a data communication device
CN102035735A (zh) 用于提供转发信息和服务质量信息的设备和方法
WO2021139289A1 (zh) 报文发送方法、路由表项的生成方法、装置及存储介质
CN112583711A (zh) 一种报文处理方法及装置
WO2020134831A1 (zh) 一种用于片上网络的数据传输方法、装置及电子设备
WO2011124030A1 (zh) 路由表项的存储方法和装置
WO2020093871A1 (zh) 下行报文发送、转发方法和装置
WO2021088561A1 (zh) 位索引显式复制网络中负载分担的方法、装置及设备
US9270586B2 (en) Method for abstracting datapath hardware elements
WO2022222750A1 (zh) 报文转发方法、装置、网络设备及存储介质
WO2020098597A1 (zh) 一种组播的方法及路由设备
CN112653622B (zh) 一种SRv6 uSID转发方法及装置
WO2021052381A1 (zh) 报文的发送方法和装置
WO2021143660A1 (zh) 一种数据传输的方法和装置
WO2023273957A1 (zh) 算力发布方法、算力更新方法及装置
US8855015B2 (en) Techniques for generic pruning in a trill network

Legal Events

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

Ref document number: 21742019

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 21742019

Country of ref document: EP

Kind code of ref document: A1