WO2022261961A1 - Method for forwarding message, and switch and network interface card - Google Patents

Method for forwarding message, and switch and network interface card Download PDF

Info

Publication number
WO2022261961A1
WO2022261961A1 PCT/CN2021/101018 CN2021101018W WO2022261961A1 WO 2022261961 A1 WO2022261961 A1 WO 2022261961A1 CN 2021101018 W CN2021101018 W CN 2021101018W WO 2022261961 A1 WO2022261961 A1 WO 2022261961A1
Authority
WO
WIPO (PCT)
Prior art keywords
message
type
switch
frame format
forwarding
Prior art date
Application number
PCT/CN2021/101018
Other languages
French (fr)
Chinese (zh)
Inventor
郑盛巍
刘亚社
吕超
周轶刚
Original Assignee
华为技术有限公司
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 华为技术有限公司 filed Critical 华为技术有限公司
Priority to CN202180098887.0A priority Critical patent/CN117480744A/en
Priority to PCT/CN2021/101018 priority patent/WO2022261961A1/en
Publication of WO2022261961A1 publication Critical patent/WO2022261961A1/en

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • H04L12/46Interconnection of networks

Definitions

  • Embodiments of the present disclosure relate to electronic devices. More specifically, it relates to a method for forwarding packets, a switch and a network interface card.
  • TCP/IP Transmission Control Protocol/Internet Protocol
  • RDMA Remote Direct Memory Access
  • Embodiments according to the present disclosure relate to a method for forwarding packets, a switch and a network interface card.
  • a method for forwarding packets includes the switch receiving the message from the network interface card.
  • the method also includes the switch forwarding the message according to the configurable parameters in the destination media access control field in the frame format of the message, wherein the configurable parameters are associated with the message type of the message, and the message type includes The first type of packet in the Ethernet frame format and the second type of packet in the standard Ethernet frame format.
  • the switch can determine the type of the message according to the parameter at a specific position in the message frame format and forward the message based on the determined message type. Therefore, the switch can implement different processing processes for different types of messages, for example, a simplified forwarding process can be used for simplified Ethernet messages, and other forwarding methods can be used for regular messages. In this way, accelerated forwarding of packets can be realized to reduce the time delay in the forwarding process.
  • a simplified mode of the Ethernet frame format can be realized without changing the original frame structure. Since the definition of the simplified Ethernet frame format is more concise than that of the standard Ethernet, the link bandwidth can be improved.
  • the switch may compare the configurable parameter with the predetermined parameter of the destination MAC field in the reference frame format of the first type packet. If it is determined that the configurable parameter matches the predetermined parameter, the received message is determined as the first type message. The switch may determine an output port number associated with the destination address of the message and forward the message based on the output port number.
  • the switch may compare the configurable parameter with the predetermined parameter of the destination MAC field in the reference frame format of the first type packet. If it is determined that the configurable parameter does not match the predetermined parameter, then determine the received message as the second type of message. The switch may determine whether the message is allowed to be forwarded to the target device of the message by performing an inbound processing operation on the message. If it is determined that the message is forwarded to the destination device of the message via the switch, the switch may determine an output port number associated with the destination address of the message and forward the message based on the output port number. message.
  • the switch can determine the processing process for the message according to different message types, so that the steps in the message forwarding process can be correspondingly reduced, thereby reducing the possible delay in the forwarding process.
  • the switch obtains the destination address from the frame format of the packet.
  • the target address includes one of the following: the address of the target device to receive the message, or the address of a target network segment related to the target device.
  • the switch determines the output port number by performing an exact match operation or a linear table lookup operation based on the target address.
  • the address of the target network segment includes a configurable bitmask of predetermined length.
  • the packet may be processed in the inbound direction by using a tri-state content addressable memory matching operation.
  • a method for forwarding packets includes the network interface card determining a configurable parameter in a destination media access control field in a frame format of a message, wherein the configurable parameter is associated with a message type of the message, and the message type includes A first type of packet with a simplified Ethernet frame format and a second type of packet with a standard Ethernet frame format.
  • the method also includes the network interface card generating the message based on the configurable parameter and sending the message to the switch.
  • the network interface card can implement a simplified Ethernet message without changing the original frame format by configuring the parameters of the specific field in the frame format of the message. Therefore, the packets using the simplified Ethernet frame format and the packets using the standard Ethernet frame format can not only intercommunicate, but also coexist. This simplified Ethernet message can significantly reduce the complexity of the forwarding process, improve bandwidth efficiency and reduce delay.
  • the network interface card determines a type of data packet to be encapsulated into the packet and determines a configurable parameter based on the type of data packet.
  • the network interface card obtains a set of predetermined parameters of the destination media access control field in the reference frame format associated with the first type of message and determines the configurable parameter from the set of predetermined parameters .
  • a switch in a third aspect of the embodiments of the present disclosure, may include a processor and a memory coupled to the processor.
  • the memory stores instructions that need to be executed, and when the instructions are executed by the processor, the switch executes any method according to the first aspect and its implementation manners.
  • a network interface card may include a processor and a memory coupled with the processor.
  • the memory stores instructions that need to be executed, and when the instructions are executed by the processor, the network interface card executes any method according to the second aspect and the implementation manners thereof.
  • a computer readable storage medium stores instructions, which, when executed by the electronic device, cause the electronic device to execute any method of the first aspect and its implementation manners or any method of the second aspect and its implementation manners.
  • a computer program product includes instructions, which, when executed by the electronic device, cause the electronic device to perform any method of the first aspect and its implementations or any method of the second aspect and its implementations.
  • Figure 1 shows a schematic diagram of an example environment in which an embodiment of the present application may be implemented
  • FIG. 2 shows a signaling interaction diagram of an exemplary message forwarding process according to an embodiment of the present disclosure
  • 3A to 3C show schematic diagrams of example message types according to an embodiment of the present disclosure
  • FIG. 4 shows a schematic diagram of a message forwarding process according to an embodiment of the present disclosure
  • FIG. 5 shows a schematic diagram of a message forwarding process according to an embodiment of the present disclosure
  • FIG. 6 shows a flowchart of a method for packet forwarding according to an embodiment of the present disclosure
  • FIG. 7 shows a flowchart of a method for packet forwarding according to an embodiment of the present disclosure
  • FIG. 8 shows a block diagram of a communication device according to an example embodiment of the present disclosure.
  • FIG. 9 shows a block diagram of a communication device according to an example embodiment of the present disclosure.
  • a typical network device may include a network interface card (Network Interface Card, NIC), such as a smart network card (Smart Network Interface Card, SNIC) and a data processing unit (Data Processing Unit, DPU).
  • NICs can be regarded as end-side devices of various networks.
  • Typical network equipment may also include switches.
  • the main types of frame formats mainly include various packets carried on the basis of standard Ethernet frames and standard IP packets, and standard Ethernet frames based on Switch Fabricized interfaces.
  • TCP/IP is currently the most widely used protocol type in DCN, and secondly, the RDMA protocol carried on standard IP and standard Ethernet has also increased.
  • RDMA protocol carried on standard IP and standard Ethernet has also increased.
  • switch-fabricized DCN most of the various fabric protocols based on the packet-by-packet load balancing technology used to increase bandwidth are basically carried by the standard Ethernet frame format.
  • the standard Ethernet frame format is still widely used in the DCN.
  • OSI Open System Interconnection Reference Model
  • the first layer protocol (Layer 1, L1) in the standard seven-layer model
  • the second layer protocol (Layer 2, L2) in the standard seven-layer model 1.
  • the third layer protocol (Layer 3, L3) in the standard seven-layer model and the fourth layer protocol (Layer 4, L4) in the standard seven-layer model are most closely related to the DCN network.
  • L2 adopts standard Ethernet frame format
  • L3 adopts standard Internet Protocol Version 4 (Internet Protocol Version 4, IPv4) or Internet Protocol Version 6 (Internet Protocol Version 6, IPv6)
  • L4 adopts TCP and User Datagram Protocol (User Datagram Protocol) Protocol, UDP).
  • UDP User Datagram Protocol
  • it can also include a network protocol (RDMA over Converged Ethernet Version 2, RoCEv2) and an extended virtual local area network (Visual extend LAN, VxLAN) protocol that allows the use of RDMA over Ethernet.
  • RoCEv2 Network protocol
  • VxLAN virtual local area network
  • DCN Switch Fabric technology refers to a type of technology in which each network operator applies the Switch Fabric technology that previously existed in a single network device to the entire DCN.
  • Switch Fabric technology Through the use of Switch Fabric technology in DCN, the bandwidth efficiency is greatly improved, so various Switch Fabric technologies are more and more widely used in DCN.
  • IB Internet Engineering Task Force
  • HPC High Performance Computer
  • Another problem with the IB network is that the IB network cannot directly communicate with the DCN of the Ethernet, which makes the operation and maintenance of the cloud network using IB more difficult.
  • Some network operators have proposed a packet header without an Ethernet frame format.
  • the Ethernet packet header is removed from L2, and the forwarding and switching process is based on the L3 packet header.
  • this solution can improve some bandwidth efficiency and increase some performance income.
  • this scheme is not compatible with the existing standard Ethernet frame format.
  • existing software, management protocols, operation and maintenance protocols, routing protocols, etc. are not compatible, or need to be modified before they can run.
  • the system overhead caused by this is huge.
  • this solution does not bring corresponding improvement to the most important performance index of DCN, that is, the delay overhead in the process of forwarding and switching.
  • IP packets without Ethernet frames are not processed at L2, control, management, and protocol packets are mixed together with service packets that require low latency.
  • the IB network uses its own L2 frame format and IPv6 for L3 forwarding, which can bring better network performance and lower delay.
  • the IB network is small in scale, which is far inferior to the large-scale networking capability of Ethernet DCN.
  • the IB network is not compatible with Ethernet.
  • the intercommunication between IB network and Ethernet needs to be realized through a specific gateway.
  • the existence of a dedicated protocol gateway not only affects the intercommunication performance, but also brings damage to the overall standardization of the DCN, making the operation and maintenance of the cloud network (that is, cloud DCN) troublesome, and the post-operation cost of the DCN is also increased.
  • embodiments of the present disclosure provide a method for forwarding packets.
  • the method includes the switch receiving the message from the network interface card.
  • the method further includes the switch determining the message type of the message based on a configurable parameter in the destination media access control field in the frame format of the message.
  • the method also includes the switch forwarding the message based on the determined message type.
  • the switch can implement different processing processes for different types of messages, for example, a simplified forwarding process can be used for simplified Ethernet messages, and other forwarding methods can be used for regular messages. In this way, accelerated forwarding of packets can be realized to reduce the time delay in the forwarding process.
  • FIG. 1 shows a schematic diagram of an example environment in which one embodiment of the present application may be implemented.
  • environment 100 may include NICs 110-1, 110-2, and 110-3.
  • NICs 110-1, 110-2 and 110-3 may also be collectively referred to as NIC 110 hereinafter.
  • NICs 110-1, 110-2, and 110-3 may be hosted on servers 101-1, 101-2, and 101-3, respectively.
  • NIC 110 may be implemented in a variety of forms.
  • NIC 110 may be implemented including, but not limited to, a SNIC DPU, an intelligent top-of-rack (ToR) switch, and an intelligent edge switch, among others.
  • ToR top-of-rack
  • Environment 100 may also include switches 120-1, 120-2, 120-3, 120-4, and 120-5.
  • the switches 120 - 1 , 120 - 2 , 120 - 3 , 120 - 4 and 120 - 5 may also be collectively referred to as switches 120 hereinafter.
  • switches 120-1, 120-2, 120-3, 120-4, and 120-5 may be considered first-level switches (also referred to as ToR switches).
  • NICs 110-1, 110-2, and 110-3 can perform data transmission with switches 120-1, 120-2, and 120-3, respectively.
  • the switches 120-1, 120-2 and 120-3 can respectively perform data transmission with the switches 120-4 and 120-5.
  • switch 120 may be implemented in a variety of forms.
  • the switch 120 may be implemented to include but not limited to a ToR switch, a leaf switch (leaf switch), a spine switch (spine switch), and a core switch (core switch).
  • NICs and switches included in environment 100 are not limited to those shown in FIG. 1 .
  • Environment 100 may include any number of NICs and switches.
  • Environment 100 is for exemplary purposes only and does not imply any limitation as to the scope of the present disclosure.
  • Embodiments of the present disclosure may also be embodied in other network environments or architectures.
  • the environment 100 may also include other elements or entities for realizing communication connection, data transmission and other purposes. In order to simplify the description, these elements or entities are not shown in FIG. 1 , but it does not mean that the embodiments of the present disclosure do not have them.
  • FIG. 2 shows a signaling diagram 200 of an exemplary message forwarding process according to an embodiment of the present disclosure.
  • the information interaction between the NIC 110 and the switch 120 during the message forwarding process according to the embodiment of the present disclosure will be described in detail first with reference to FIG. 2 .
  • the message forwarding process will be described in conjunction with the environment 100 shown in FIG. 1 .
  • the NIC 110 may determine the configurable parameters in the destination MAC field in the frame format of the message and generate (205) the message according to the configurable parameters.
  • the configurable parameter may be associated with the message type of the message.
  • the packet type may include a first type packet in a simplified Ethernet frame format.
  • the packet type may also include a second type packet in a standard Ethernet frame format.
  • NIC 110 may determine what type of message to generate based on the type of traffic associated with the message to be generated. For example, if the service corresponding to the message to be generated is a service requiring low delay, the NIC 110 may determine that the message to be generated is the first type of message. And if the service corresponding to the message to be generated is a control class, a protocol class, an operation and maintenance class, or a management service, then the NIC 110 may determine that the message to be generated is a second type of message.
  • the NIC 110 can configure the corresponding simplified Ethernet frame format in the destination media access control (Destination MAC address, DMAC) domain in the frame format of the packet.
  • DMAC destination media access control
  • Configurable parameters for the Ethernet frame format For example, NIC 110 may obtain a set of predetermined parameters of the DMAC field in the reference frame format associated with the first type of message. These predetermined parameters may be preconfigured to NIC 110. The NIC may select parameters to be configured in the DMAC field in the frame format of the message from a set of acquired predetermined parameters.
  • FIG. 3A and FIG. 3B respectively show schematic diagrams of example packet types according to an embodiment of the present disclosure.
  • Figure 3A shows an example of a standard Ethernet frame format
  • Figure 3B shows an example of a simplified Ethernet frame format.
  • a standard Ethernet frame format may include an Ethernet header 310 .
  • the Ethernet header 310 may include a DMAC field 311 , a source media access control (SMAC) field 312 , a VLAN field 313 , and an Ethernet frame checksum (FCS) field 314 and the like.
  • the DMAC domain field 311 can include information about the destination address that the message is forwarded
  • the SMAC domain field 312 can include information about the source address of the message
  • the FCS domain field can include information for checking the Ethernet frame for errors in the forwarding process. verification information.
  • the Ethernet header 320 of the simplified Ethernet frame format may include a DMAC domain field 321 , in which the predetermined DMAC domain parameters for the first type of message as described above are configured.
  • the Ethernet header in the simplified Ethernet frame format may not contain any L2 fields except the FCS field 322 .
  • the Ethernet header in the simplified Ethernet frame format may not contain any L2 fields except the FCS domain field 322 and a VLAN field (not shown).
  • the simplified Ethernet frame format simplifies some fields compared with the standard Ethernet frame format, it is still in the framework of the traditional Ethernet header in essence. Therefore, the simplified Ethernet frame format and the standard Ethernet frame format Text can not only communicate with each other, but also coexist. Therefore, through the specific definition of DMAC, it is possible to support the simplified Ethernet frame format of the message while being compatible with the existing rich ecology of the standard Ethernet message. Compatibility with the standard Ethernet frame format for sending and receiving means that it is compatible with a wide range of vibrant Ethernet ecosystems.
  • the NIC can realize a simplified Ethernet message without changing the original frame format by configuring the parameters of the specific field in the frame format of the message.
  • This simplified Ethernet message can significantly reduce the complexity of the forwarding process, improve bandwidth efficiency and reduce delay.
  • the current mainstream load sharing technology is a flow-by-flow load sharing method represented by Equal-cost multi-path (ECMP).
  • ECMP involves a flow-level load balancing strategy that can reduce bursts and congestion on the network.
  • the bandwidth efficiency of this load sharing method is low, so the Packet-based Dynamic Load Balance method will gradually become the mainstream of load sharing methods in DCN.
  • switch fabric can be introduced into the first type of packets.
  • the Ethernet header 330 in the Ethernet frame format of the first type message generated by the NIC 110 may also include fields associated with Switch Fabric.
  • FIG. 3C shows a schematic diagram of example message types according to an embodiment of the disclosure.
  • the Ethernet header 330 may include a Switch Fabric header 332 in addition to the DMAC domain field 331 and the FCS field.
  • the Switch Fabric head 332 can implement packet-by-packet load sharing technology, which not only has low byte overhead, high bandwidth efficiency, but also fast processing and low time delay.
  • the Switch Fabric interface based on packet-by-packet load sharing technology can include source routing technology that carries multiple hop-by-hop switching port numbers and switching network technology that performs a linear table search for the destination port number at each hop.
  • NIC 110 sends (210) the generated message to switch 120.
  • switch 120 may determine (215) how to forward the received message.
  • the switch 120 may determine the forwarding mode of the message according to the configurable parameters in the DMAC domain in the frame format of the received message.
  • the switch 120 can determine whether the configurable parameters in the DMAC field match the predetermined parameters in the DMAC field in the reference frame format of the first type message. If it is determined that the configurable parameters in the DMAC domain of the frame format of the received message match the predetermined parameters, the switch 120 may determine that the received message belongs to the first type of message. If it is determined that the configurable parameters in the DMAC domain of the frame format of the received message do not match the predetermined parameters, the switch 120 may determine that the received message belongs to the second type of message.
  • the switch 120 can forward packets according to different packet types.
  • the switch 120 can skip the intermediate process of processing the message and directly forward the message, thereby obtaining excellent ultra-low delay characteristics.
  • the intermediate process may include, for example, packet parsing, control management protocol packet matching, local packet matching, and the like.
  • the switch 120 can perform conventional Ethernet message forwarding processing by using channels such as message analysis.
  • the message type depends on the service type involved in the message.
  • the first type of packets may involve packets associated with low-latency services, while the second type of packets may involve control packets, protocol packets, operation and maintenance Encapsulated ordinary service packets.
  • Fig. 4 shows an example of determining a packet forwarding manner according to an embodiment of the present disclosure.
  • the switch will determine the message type of the message. If it is determined that the message is the first type message, then the message is directly forwarded or exchanged (430). And if switch determines that this message is the second type of message, then this message at first carries out message intermediate processing processes such as message parsing (410) and control message and local message matching (420), and then through intermediate processing The message will be forwarded and exchanged (430).
  • message intermediate processing processes such as message parsing (410) and control message and local message matching (420), and then through intermediate processing
  • the message will be forwarded and exchanged (430).
  • the first type of message can be forwarded faster, which can significantly reduce the delay caused by the intermediate process of the message.
  • link bandwidth can be improved.
  • the switch 120 can forward or exchange the message received from the NIC 110.
  • the Ethernet header of the frame format of the first type of message includes the DMAC domain field with specific parameters, and no other L2 field is included in the Ethernet header except the FCS field. field, so the switch 120 can adopt a simplified forwarding process.
  • the second type of message although it has a standard Ethernet frame format, a relatively simplified forwarding process is also proposed in this application.
  • the switch 120 may determine the output port number associated with the destination address of the packet and forward the first type of packet based on the output port number. message.
  • the switch 120 may determine whether the packet is allowed to be forwarded to the destination device of the packet by performing an inbound processing operation on the packet. If the switch 120 determines that the message is allowed to be forwarded to the target device of the message via the switch, the switch 120 may forward the second output port number associated with the target address of the message based on the output port number. type message.
  • Fig. 5 shows a schematic diagram of a packet forwarding process according to an embodiment of the present disclosure.
  • the standard forwarding process 510 in DCN may include inbound port processing 511, inbound L2 processing 512, inbound access control list (ACL) check 513, L3 forwarding 514, forwarding associated data 515, outbound ACL check 516 , outbound direction L2 processing 517 and outbound port processing 518 .
  • the inbound port processing 521 can be omitted to reduce the delay.
  • only port attribute processing may be performed in the ingress port processing 521, so as to obtain all port attributes through a linear table (LT) lookup.
  • LT linear table
  • inbound L2 processing 522 tri-state content addressable memory (TCAM) may be employed to perform inbound L2 processing. The matching specifications of the TCAM are small, which can further shorten the delay.
  • the switch 120 may use exact match (EM) to find the output port number corresponding to the host address or network segment address during the L3 forwarding 523 process.
  • EM exact match
  • the address of the network segment is a configurable mask with a predetermined bit length.
  • the switch 120 may also use the LT lookup to determine the corresponding output port number of the host address or network segment address during the L3 forwarding 523 process.
  • the address of the network segment is a configurable mask with a predetermined bit length.
  • a method of linearly arranging IP addresses may be used. For example, for a 32-bit IPv4 or 128-bit IPv6 address, only limited bits are used for IP address allocation, and in the forwarding process, only these bits are used for LT lookup, so as to achieve a faster lookup speed.
  • the switch 120 may perform the process of forwarding associated data 524 and the process of egress port processing 525 .
  • the forwarding process 520 for the second type message with the standard Ethernet frame format omits the inbound ACL check included in the standard forwarding process 510 in the DCN, and the outbound ACL Check and out direction L2 processing. Therefore, the complexity of packet processing during switch forwarding can be reduced, and the delay can be significantly reduced.
  • the ingress port processing 531 can also be omitted to reduce the delay.
  • only port attribute processing may be performed in the ingress port processing 531, so as to obtain all port attributes through a linear table (LT) lookup.
  • LT linear table
  • the DCN field can be omitted in the forwarding process 530.
  • L3 forwarding 532 in forwarding process 530 may perform similar operations as L3 forwarding 523 in forwarding process 520 .
  • the switch 120 may use exact match (EM) to find the output port number corresponding to the host address or network segment address during the L3 forwarding 532 process.
  • the address of the network segment is a configurable mask with a predetermined bit length.
  • the switch 120 may also use the LT lookup to determine the corresponding output port number of the host address or network segment address during the L3 forwarding 532 process.
  • the address of the network segment is a configurable mask with a predetermined bit length.
  • IPv4 or 128-bit IPv6 address a method of linearly arranging IP addresses can be used. For example, for a 32-bit IPv4 or 128-bit IPv6 address, only limited bits are used for IP address allocation, and in the forwarding process, only these bits are used for LT search to achieve a faster search speed.
  • the switch 120 may perform the process of forwarding associated data 533 and the process of egress port processing 534 .
  • the steps are further reduced in the forwarding process 530 for the first type message with the simplified Ethernet frame format, so in the message The delay caused by processing packets during forwarding can be further reduced.
  • the NIC can implement a simplified Ethernet message without changing the original frame format by configuring parameters in specific fields in the frame format of the message. Therefore, the packets using the simplified Ethernet frame format and the packets using the standard Ethernet frame format can not only intercommunicate, but also coexist. This simplified Ethernet message can significantly reduce the complexity of the forwarding process, improve bandwidth efficiency and reduce delay.
  • the switch can determine the type of the message according to the parameter at a specific position in the message frame format and forward the message based on the determined message type. Therefore, the switch can implement different processing processes for different types of messages, for example, a simplified forwarding process can be used for simplified Ethernet messages, and other forwarding methods can be used for regular messages. In this way, accelerated forwarding of packets can be realized to reduce the time delay in the forwarding process.
  • Fig. 6 shows a flowchart of a method 600 for forwarding packets according to an embodiment of the present disclosure.
  • the measurement method shown in FIG. 6 can be implemented at the switch 120 in FIG. 1 .
  • the switch 120 receives the message from the network interface card 110 .
  • the switch 120 forwards the message according to configurable parameters in the destination MAC field in the frame format of the message.
  • the configurable parameter is associated with the message type of the message, and the message type includes a first type message with a simplified Ethernet frame format and a second type message with a standard Ethernet frame format.
  • the switch 120 may compare the configurable parameter with the predetermined parameter of the destination MAC field in the reference frame format of the first type packet. If it is determined that the configurable parameter matches the predetermined parameter, the switch 120 determines the received packet as the first type packet. Switch 120 may determine an output port number associated with the destination address of the message and forward the message based on the output port number.
  • the switch 120 may compare the configurable parameter with the predetermined parameter of the destination MAC field in the reference frame format of the first type packet. If it is determined that the configurable parameter does not match the predetermined parameter, the switch 120 determines the received packet as the second type packet. The switch 120 may determine whether the packet is allowed to be forwarded to the target device of the packet by performing an inbound processing operation on the packet. If it is determined that the message is forwarded to the target device of the message via the switch, the switch 120 may determine an output port number associated with the target address of the message and forward the message based on the output port number. report message.
  • the switch 120 obtains the target address from the frame format of the message, and the target address includes the address of the target device to receive the message, or the target network address related to the target device. segment address.
  • the switch 120 determines the output port number by performing an exact match operation or a linear table lookup operation based on the target address.
  • the address of the target network segment includes a configurable bitmask of predetermined length.
  • the switch 120 performs an inbound processing operation on the packet through a tri-state content-addressable memory matching operation.
  • the switch can implement different processing processes for different types of packets. In this way, accelerated forwarding of packets can be realized to reduce the time delay in the forwarding process.
  • Fig. 7 shows a flow chart of a method 700 for forwarding packets according to an embodiment of the present disclosure.
  • the measurement method shown in FIG. 8 may be implemented at the NIC 110 in FIG. 1 .
  • NIC 110 determines configurable parameters in the destination media access control field in the frame format of the message.
  • the configurable parameter is associated with the message type of the message, and the message type includes a first type message with a simplified Ethernet frame format and a second type message with a standard Ethernet frame format.
  • NIC 110 determines the type of data packet to be encapsulated into the message and determines a configurable parameter based on the type of data packet.
  • the NIC 110 acquires a set of predetermined parameters of the destination MAC field in the reference frame format associated with the first type message And determining said configurable parameter from said set of predetermined parameters.
  • the NIC 110 generates the message based on the configurable parameters.
  • the NIC 110 sends the message to the switch.
  • a simplified Ethernet message can be realized without changing the original frame format by configuring parameters in specific fields in the frame format of the message. Therefore, the packets using the simplified Ethernet frame format and the packets using the standard Ethernet frame format can not only intercommunicate, but also coexist. This simplified Ethernet message can significantly reduce the complexity of the forwarding process, improve bandwidth efficiency and reduce delay.
  • FIG. 8 shows a block diagram of a communication device 800 according to an example embodiment of the present disclosure.
  • the communication device 800 may be implemented as the NIC 110 shown in FIG. 1 , the switch 120, a part of the above equipment or a chip in the above equipment, etc.
  • the communication device 800 is used for exemplary purposes only and does not imply any limitation on the scope of the present disclosure. Embodiments of the present disclosure may also be embodied in different communication devices.
  • the communication device 800 may also include other elements, modules or entities, which are not shown for the purpose of clarity, but it does not mean that the embodiments of the present disclosure do not have these elements or entities. The scope of the present disclosure is not limited in this respect.
  • the communication device 800 includes an input and output interface 810 and a logic circuit 820 .
  • the input-output interface 810 is coupled to a logic circuit 820 .
  • the input and output interfaces 810 may be integrated together to implement the sending and receiving function, and may also be implemented as independent components as an input interface for receiving and an output interface for sending.
  • the input-output interface 810 shown in FIG. 8 is an example implementation of integration.
  • the input and output interface 810 is configured to receive a message from the network interface card 110 and to Configurable parameters in forwarding packets.
  • the configurable parameters are associated with the message type of the message, and the message type includes a first type message with a simplified Ethernet frame format and a second type message with a standard Ethernet frame format.
  • the input-output interface 810 is further configured to compare the configurable parameter with the predetermined parameter of the destination MAC field in the reference frame format of the first type packet. If it is determined that the configurable parameter matches the predetermined parameter, the received message is determined as the first type message. An output port number associated with the destination address of the message is determined and the message is forwarded based on the output port number.
  • the input-output interface 810 is further configured to compare the configurable parameter with the predetermined parameter of the destination MAC field in the reference frame format of the first type packet. If it is determined that the configurable parameter does not match the predetermined parameter, then determine the received message as the second type of message. It is determined whether the packet is allowed to be forwarded to the target device of the packet by performing an inbound direction processing operation on the packet. If it is determined that the message is forwarded to the destination device of the message via the switch, determining an output port number associated with the destination address of the message and forwarding the message based on the output port number .
  • the input and output interface 810 is further configured to obtain a target address from the frame format of the message, and the target address includes the address of the target device to receive the message, or is related to the The address of the target network segment related to the target device.
  • the output port number is determined by performing an exact match operation or a linear table lookup operation based on the target address.
  • the address of the target network segment includes a configurable predetermined length bitmask.
  • the I/O interface 810 is further configured to perform an inbound processing operation on the packet through a 3-state content-addressable memory matching operation.
  • the logic circuit 820 is configured to determine the configurable parameters in the destination MAC field in the frame format of the message and based on the configurable parameter The message is generated, wherein the configurable parameter is associated with a message type of the message, and the message type includes a first type message in a simplified Ethernet frame format and a second type message in a standard Ethernet frame format. .
  • the input and output interface 810 may be configured to send packets to the switch.
  • the logic circuit 820 is further configured to determine a type of data packet to be encapsulated into the message and determine a configurable parameter based on the type of data packet.
  • the logic circuit 820 is further configured to obtain a set of predetermined parameters of the destination MAC field in the reference frame format associated with the first type of message and determine from the set of predetermined parameters The configurable parameters.
  • Figure 9 shows a block diagram of a communications device 900 in which certain embodiments of the present disclosure may be implemented.
  • the communication device 900 can be used to implement the terminal device 110 and the network device 120 shown in FIG. 1 .
  • the communication device 900 may also be implemented as a chip or a chip system. It should be understood that the communication device 900 is used for exemplary purposes only and does not imply any limitation on the scope of the present disclosure. Embodiments of the present disclosure may also be embodied in different devices. It should also be understood that the communication device 900 may also include other elements or entities, which are not shown for ease of description, but it does not mean that the embodiments of the present disclosure do not have these elements or entities.
  • the communication device 900 includes a processor 910 that controls the operations and functions of the communication device 900 .
  • processor 910 may perform various operations by means of instructions 930 stored in memory 920 coupled thereto.
  • Memory 920 may be of any suitable type suitable for the local technical environment and may be implemented using any suitable data storage technology, including but not limited to semiconductor-based memory devices, magnetic memory devices and systems, optical memory devices and systems. Although only one memory unit is shown in FIG. 9 , there may be multiple physically distinct memory units in communication device 900 . It should be understood that the processor 910 and the memory 920 may be separately configured as individual components, or may be integrated together, which is not limited in this application.
  • Processor 910 may be of any suitable type suitable for the local technical environment, and may include, but is not limited to, general purpose computers, special purpose computers, microcontrollers, digital signal processors (Digital Signal Processor, DSP), and controller-based multi-core control One or more of the server architecture.
  • Communications device 900 may also include multiple processors, such as application specific integrated circuit chips, that are time slaved to a clock that is synchronized with the main processor.
  • the processor 910 is coupled with the communication unit 940 .
  • the communication unit 940 may realize receiving and sending of information through radio signals or by means of optical fibers, cables and/or other components.
  • Memory 920 may include one or more non-volatile memories and one or more volatile memories.
  • non-volatile memory include, but are not limited to, read-only memory (Read-Only Memory, ROM), erasable programmable read-only memory (Erasable Programmable Read Only Memory, EPROM), flash memory, hard disk, optical disc (Compact Disc, CD), Digital Video Disk (Digital Versatile Disc, DVD) or other magnetic and/or optical storage.
  • Examples of volatile memory include but not limited to random access memory (Random Access Memory, RAM) and the like.
  • Embodiments of the present disclosure may be implemented by means of a computer program, enabling the communication device 900 to perform any of the processes as discussed with reference to FIGS. 2 to 7 .
  • the embodiments of the present disclosure can also be realized by hardware or by a combination of software and hardware.
  • the computer program comprises computer-executable instructions 930 executed by the processor 910 .
  • Computer programs can be stored in the memory 920 .
  • Processor 910 may perform any suitable actions and processes by loading a computer program into RAM.
  • the NIC 110 or switch 120 determines tuning parameters by utilizing modules of machine learning algorithms, reinforcement learning models, etc.
  • these modules and models may be stored in memory 920 in the form of computer program code or instructions 930
  • the processor executes the program codes or instructions in the memory 920 to cause the communication device 900 to execute the processing procedures implemented by the NIC 110 or the switch 120 in FIG. 2 to FIG. 7 .
  • the computer program may be tangibly embodied on a computer readable medium, which may be included in the communication apparatus 900 (such as in the memory 920 ) or other storage device accessible by the communication apparatus 900 .
  • a computer program can be loaded from a computer readable medium into RAM for execution.
  • the computer readable medium may include any type of tangible nonvolatile memory such as ROM, EPROM, flash memory, hard disk, CD, DVD, and the like.
  • various example embodiments of the present disclosure may be implemented in hardware or special purpose circuits, software, logic, or any combination thereof. Certain aspects may be implemented in hardware, while other aspects may be implemented in firmware or software, which may be executed by a controller, microprocessor or other computing device.
  • aspects of example embodiments of the present disclosure are illustrated or described as block diagrams, flowcharts, or using some other graphical representation, it is to be understood that the blocks, devices, systems, techniques, or methods described herein may serve as non-limiting Examples of are implemented in hardware, software, firmware, special purpose circuits or logic, general purpose hardware or controllers or other computing devices, or some combination thereof.
  • example embodiments of the present disclosure may be described in the context of machine or computer-executable instructions, such as program modules included in a device executed on a real or virtual processor of a target.
  • program modules include routines, programs, libraries, objects, classes, components, data structures, etc. that perform particular tasks or implement particular abstract data structures.
  • the functionality of the program modules may be combined or divided between the described program modules.
  • Machine-executable instructions for program modules may be executed locally or in distributed devices. In a distributed device, program modules may be located in both local and remote storage media.
  • Computer program codes for implementing the methods of the present disclosure may be written in one or more programming languages. These computer program codes can be provided to processors of general-purpose computers, special-purpose computers, or other programmable data processing devices, so that when the program codes are executed by the computer or other programmable data processing devices, The functions/operations specified in are implemented.
  • the program code may execute entirely on the computer, partly on the computer, as a stand-alone software package, partly on the computer and partly on a remote computer or entirely on the remote computer or server.
  • computer program code or related data may be carried by any suitable carrier to enable a device, apparatus or processor to perform the various processes and operations described above.
  • carriers include signals, computer readable media, and the like.
  • signals may include electrical, optical, radio, sound, or other forms of propagated signals, such as carrier waves, infrared signals, and the like.
  • a machine-readable medium or computer-readable medium may be any tangible medium containing or storing a program for or relating to an instruction execution system, apparatus, or device.
  • a machine-readable medium can be a machine-readable signal medium or a machine-readable storage medium.
  • a machine-readable medium may include, but is not limited to, an electronic, magnetic, optical, electromagnetic, infrared, or semiconductor system, apparatus, or device, or any suitable combination thereof. More detailed examples of machine-readable storage media include electrical connections with one or more wires, portable computer diskettes, hard disks, random storage access memory (RAM), read-only memory (ROM), erasable programmable read-only memory (EPROM or flash), optical storage, magnetic storage, or any suitable combination thereof.

Abstract

The embodiments of the present application relate to a method for forwarding a message, and a switch and a network interface card. The method for forwarding a message comprises: a switch receiving a message from a network interface card; and the switch forwarding the message according to a configurable parameter in a destination media access control domain in a frame format of the message. In this way, the accelerated forwarding of a message can be realized, so as to reduce a delay during a forwarding process. In addition, the complexity during the forwarding process can be significantly reduced, thereby improving the bandwidth efficiency, and reducing the delay.

Description

用于转发报文的方法、交换机以及网络接口卡Method for forwarding message, switch and network interface card 技术领域technical field
本公开的实施例涉及电子设备。更具体而言涉及用于转发报文的方法、交换机以及网络接口卡。Embodiments of the present disclosure relate to electronic devices. More specifically, it relates to a method for forwarding packets, a switch and a network interface card.
背景技术Background technique
在基于标准以太网帧和标准因特网互联协议(Internet Protocol,IP)报文中,首先传输控制协议/因特网互联协议(Transmission Control Protocol/Internet Protocol,TCP/IP)是目前在数据中心网络(Data Center Network,DCN)采用最为广泛的协议类型,其次承载在标准IP和标准以太上的远程内存直接访问(Remote Direct Memory Access,RDMA)协议也有所增加。在交换网(switch fabric)化的DCN中,为了提升带宽而采用的基于逐报文负载均衡技术的各种fabric协议,多数也基本采用了标准以太网帧格式来承载。Based on standard Ethernet frames and standard Internet Protocol (Internet Protocol, IP) messages, the first Transmission Control Protocol/Internet Protocol (Transmission Control Protocol/Internet Protocol, TCP/IP) is currently in the data center network (Data Center Network, DCN) adopts the most extensive protocol type, followed by the Remote Direct Memory Access (RDMA) protocol carried on standard IP and standard Ethernet has also increased. In a switch fabric-based DCN, most of the various fabric protocols based on the packet-by-packet load balancing technology used to increase bandwidth are basically carried by standard Ethernet frame formats.
发明内容Contents of the invention
根据本公开的实施例涉及用于转发报文的方法、交换机以及网络接口卡。Embodiments according to the present disclosure relate to a method for forwarding packets, a switch and a network interface card.
在本公开实施例的第一方面,提供一种用于转发报文的方法。该方法包括交换机从网络接口卡接收报文。该方法还包括交换机根据报文的帧格式中的目的地媒体访问控制域中的可配置参数,转发该报文,其中可配置参数与报文的报文类型相关联,报文类型包括具有简化的以太帧格式的第一类型报文以及具有标准以太帧格式的第二类型报文。In the first aspect of the embodiments of the present disclosure, a method for forwarding packets is provided. The method includes the switch receiving the message from the network interface card. The method also includes the switch forwarding the message according to the configurable parameters in the destination media access control field in the frame format of the message, wherein the configurable parameters are associated with the message type of the message, and the message type includes The first type of packet in the Ethernet frame format and the second type of packet in the standard Ethernet frame format.
根据本公开第一方面的方法,交换机能够根据报文帧格式中的特定位置的参数确定报文的类型并基于所确定的报文类型来转发报文。因此交换机能够实现对于不同类型的报文的不同处理进程,例如可以对于采用简化的以太报文采用简化的转发过程,而对于常规报文采用其他转发方式。以此方式,能够实现报文的加速转发以降低转发过程中的时延。According to the method of the first aspect of the present disclosure, the switch can determine the type of the message according to the parameter at a specific position in the message frame format and forward the message based on the determined message type. Therefore, the switch can implement different processing processes for different types of messages, for example, a simplified forwarding process can be used for simplified Ethernet messages, and other forwarding methods can be used for regular messages. In this way, accelerated forwarding of packets can be realized to reduce the time delay in the forwarding process.
此外,通过在报文帧结构的特别为设置专用于某一报文类型的参数,能够在不改变原有帧结构的基础上实现以太网帧格式的简化的模式。由于简化的以太帧格式定义相比于标准以太更简洁,因此能够实现链路带宽的提升。In addition, by setting parameters dedicated to a certain message type in the message frame structure, a simplified mode of the Ethernet frame format can be realized without changing the original frame structure. Since the definition of the simplified Ethernet frame format is more concise than that of the standard Ethernet, the link bandwidth can be improved.
在一些实施方式中,交换机可以将所述可配置参数与所述第一类型报文的参考帧格式中的目的地媒体访问控制域的预定参数进行比较。如果确定可配置参数与所述预定参数相匹配,则将接收的所述报文确定为第一类型报文。交换机可以确定与所述报文的目标地址相关联的输出端口号并且基于所述输出端口号转发所述报文。In some implementation manners, the switch may compare the configurable parameter with the predetermined parameter of the destination MAC field in the reference frame format of the first type packet. If it is determined that the configurable parameter matches the predetermined parameter, the received message is determined as the first type message. The switch may determine an output port number associated with the destination address of the message and forward the message based on the output port number.
在一些实施方式中,交换机可以将所述可配置参数与所述第一类型报文的参考帧格式中的目的地媒体访问控制域的预定参数进行比较。如果确定可配置参数与所述预定参数不匹配,则将接收的报文确定为第二类型报文。交换机可以通过对所述报文进行入方向处理操作确定所述报文是否允许经由所述交换机被转发到所述报文的目标设备。如果确定所述报文经由所述交换机被转发到所述报文的所述目标设备,交换机可以确定与所述报文的目标地址相关联的输出端口号并基于所述输出端口号转发所述报文。In some implementation manners, the switch may compare the configurable parameter with the predetermined parameter of the destination MAC field in the reference frame format of the first type packet. If it is determined that the configurable parameter does not match the predetermined parameter, then determine the received message as the second type of message. The switch may determine whether the message is allowed to be forwarded to the target device of the message by performing an inbound processing operation on the message. If it is determined that the message is forwarded to the destination device of the message via the switch, the switch may determine an output port number associated with the destination address of the message and forward the message based on the output port number. message.
交换机能够根据不同的报文类型来决定对于报文的处理进程,使得报文转发过程的步骤能够被相应缩减,从而降低在转发过程中可能出现的时延。The switch can determine the processing process for the message according to different message types, so that the steps in the message forwarding process can be correspondingly reduced, thereby reducing the possible delay in the forwarding process.
在一些实施方式中,交换机从所述报文的所述帧格式中获取目标地址。该目标地址包括 以下中的一项:要接收所述报文的目标设备的地址,或与所述目标设备有关的目标网段的地址。交换机通过基于所述目标地址进行精确匹配操作或线性表查找操作来确定所述输出端口号。In some implementation manners, the switch obtains the destination address from the frame format of the packet. The target address includes one of the following: the address of the target device to receive the message, or the address of a target network segment related to the target device. The switch determines the output port number by performing an exact match operation or a linear table lookup operation based on the target address.
在一些实施方式中,所述目标网段的地址包括可配置的预定长度比特掩码。In some implementations, the address of the target network segment includes a configurable bitmask of predetermined length.
在一些实施方式中,可以通过三态内容寻址存储器匹配操作对所述报文进行入方向处理操作。In some implementation manners, the packet may be processed in the inbound direction by using a tri-state content addressable memory matching operation.
在本公开实施例的第二方面,提供一种用于转发报文的方法。该方法包括网络接口卡确定报文的帧格式中的目的地媒体访问控制域中的可配置参数,其中所述可配置参数与所述报文的报文类型相关联,所述报文类型包括具有简化的以太帧格式的第一类型报文以及具有标准以太帧格式的第二类型报文。该方法还包括网络接口卡基于所述可配置参数生成所述报文并将所述报文发送到交换机。In a second aspect of the embodiments of the present disclosure, a method for forwarding packets is provided. The method includes the network interface card determining a configurable parameter in a destination media access control field in a frame format of a message, wherein the configurable parameter is associated with a message type of the message, and the message type includes A first type of packet with a simplified Ethernet frame format and a second type of packet with a standard Ethernet frame format. The method also includes the network interface card generating the message based on the configurable parameter and sending the message to the switch.
根据本公开第二方面的方法,网络接口卡能够通过配置报文的帧格式中的特定域的参数来在不改变原有帧格式的基础上实现一种简化的以太报文。因此采用简化的以太帧格式的报文和采用标准以太帧格式的报文不仅可以互通,而且可以共存。这种简化的以太报文可以显著降低在转发处理过程中的复杂程度,提高带宽效率并降低时延。According to the method of the second aspect of the present disclosure, the network interface card can implement a simplified Ethernet message without changing the original frame format by configuring the parameters of the specific field in the frame format of the message. Therefore, the packets using the simplified Ethernet frame format and the packets using the standard Ethernet frame format can not only intercommunicate, but also coexist. This simplified Ethernet message can significantly reduce the complexity of the forwarding process, improve bandwidth efficiency and reduce delay.
在一些实施例中,网络接口卡确定要被封装到所述报文的数据分组的类型并基于所述数据分组的类型确定可配置参数。In some embodiments, the network interface card determines a type of data packet to be encapsulated into the packet and determines a configurable parameter based on the type of data packet.
在一些实施例中,网络接口卡获取与第一类型报文相关联的参考帧格式中的目的地媒体访问控制域的一组预定参数并从所述一组预定参数中确定所述可配置参数。In some embodiments, the network interface card obtains a set of predetermined parameters of the destination media access control field in the reference frame format associated with the first type of message and determines the configurable parameter from the set of predetermined parameters .
在本公开实施例的第三方面,提供一种交换机。该交换机可以包括处理器以及与所述处理器耦合的存储器。该存储器保存需要执行的指令,该指令在被处理器执行时使交换机执行根据第一方面及其实施方式的任一方法。In a third aspect of the embodiments of the present disclosure, a switch is provided. The switch may include a processor and a memory coupled to the processor. The memory stores instructions that need to be executed, and when the instructions are executed by the processor, the switch executes any method according to the first aspect and its implementation manners.
在本公开实施例的第四方面,提供一种网络接口卡。该网络接口卡可以包括处理器以及与所述处理器耦合的存储器。该存储器保存需要执行的指令,该指令在被处理器执行时使网络接口卡执行根据第二方面及其实施方式的任一方法。In a fourth aspect of the embodiments of the present disclosure, a network interface card is provided. The network interface card may include a processor and a memory coupled with the processor. The memory stores instructions that need to be executed, and when the instructions are executed by the processor, the network interface card executes any method according to the second aspect and the implementation manners thereof.
在本公开的第五方面,提供了一种计算机可读存储介质。计算机可读存储介质存储有指令,指令在被电子设备执行时使得电子设备执行第一方面及其实施方式的任一方法或者第二方面及其实施方式的任一方法。In a fifth aspect of the present disclosure, a computer readable storage medium is provided. The computer-readable storage medium stores instructions, which, when executed by the electronic device, cause the electronic device to execute any method of the first aspect and its implementation manners or any method of the second aspect and its implementation manners.
在本公开的第六方面,提供了一种计算机程序产品。计算机程序产品包括指令,指令在被电子设备执行时使得电子设备执行第一方面及其实施方式的任一方法或者第二方面及其实施方式的任一方法。In a sixth aspect of the present disclosure, a computer program product is provided. The computer program product includes instructions, which, when executed by the electronic device, cause the electronic device to perform any method of the first aspect and its implementations or any method of the second aspect and its implementations.
应当理解,发明内容部分中所描述的内容并非旨在限定本申请的实施方式的关键或重要特征,亦非用于限制本申请的范围。本申请的其它特征将通过以下的描述变得容易理解。It should be understood that what is described in the Summary of the Invention is not intended to limit the key or important features of the embodiments of the application, nor is it intended to limit the scope of the application. Other features of the present application will become easily understood from the following description.
附图说明Description of drawings
结合附图并参考以下详细说明,本申请各实施方式的上述和其他特征、优点及方面将变得更加明显。在附图中,相同或相似的附图标记表示相同或相似的元素,其中:The above and other features, advantages and aspects of the various embodiments of the present application will become more apparent with reference to the following detailed description in conjunction with the accompanying drawings. In the drawings, identical or similar reference numerals denote identical or similar elements, wherein:
图1示出了可以实施本申请的一个实施方式的示例环境的示意图;Figure 1 shows a schematic diagram of an example environment in which an embodiment of the present application may be implemented;
图2示出了根据本公开的实施例的示例性报文转发过程的信令交互图;FIG. 2 shows a signaling interaction diagram of an exemplary message forwarding process according to an embodiment of the present disclosure;
图3A至图3C示出了根据本公开的实施例的示例报文类型的示意图;3A to 3C show schematic diagrams of example message types according to an embodiment of the present disclosure;
图4示出了根据本公开的实施例的报文转发过程的示意图;FIG. 4 shows a schematic diagram of a message forwarding process according to an embodiment of the present disclosure;
图5示出了根据本公开的实施例的报文转发过程的示意图;FIG. 5 shows a schematic diagram of a message forwarding process according to an embodiment of the present disclosure;
图6示出了根据本公开的实施例的用于报文转发的方法的流程图;FIG. 6 shows a flowchart of a method for packet forwarding according to an embodiment of the present disclosure;
图7示出了根据本公开的实施例的用于报文转发的方法的流程图;FIG. 7 shows a flowchart of a method for packet forwarding according to an embodiment of the present disclosure;
图8示出了根据本公开的示例实施例的通信装置的框图;以及FIG. 8 shows a block diagram of a communication device according to an example embodiment of the present disclosure; and
图9示出了根据本公开的示例实施例的通信装置的框图;以及FIG. 9 shows a block diagram of a communication device according to an example embodiment of the present disclosure; and
具体实施方式detailed description
下面将参照附图更详细地描述本申请的实施方式。虽然附图中显示了本申请的某些实施方式,然而应当理解的是,本申请可以通过各种形式来实现,而且不应该被解释为限于这里阐述的实施方式,相反提供这些实施方式是为了更加透彻和完整地理解本申请。应当理解的是,本申请的附图及实施方式仅用于示例性作用,并非用于限制本申请的保护范围。Embodiments of the present application will be described in more detail below with reference to the accompanying drawings. Although certain embodiments of the present application are shown in the drawings, it should be understood that the application may be embodied in various forms and should not be construed as limited to the embodiments set forth herein; A more thorough and complete understanding of the application. It should be understood that the drawings and implementations of the present application are for exemplary purposes only, and are not intended to limit the protection scope of the present application.
在本申请的实施方式的描述中,术语“包括”及其类似用语应当理解为开放性包含,即“包括但不限于”。术语“基于”应当理解为“至少部分地基于”。术语“一个实施方式”或“该实施方式”应当理解为“至少一个实施方式”。术语“第一”、“第二”等等可以指代不同的或相同的对象。下文还可能包括其他明确的和隐含的定义。In the description of the embodiments of the present application, the term "comprising" and its similar expressions should be interpreted as an open inclusion, that is, "including but not limited to". The term "based on" should be understood as "based at least in part on". The term "one embodiment" or "the embodiment" should be understood as "at least one embodiment". The terms "first", "second", etc. may refer to different or the same object. Other definitions, both express and implied, may also be included below.
在当前DCN中,典型的网络设备可以包括网络接口卡(Network Interface Card,NIC),例如智能网卡(Smart Network Interface Card,SNIC)和数据处理单元(Data Processing Unit,DPU)等。NIC可以被视作是各种网络的端侧设备。典型的网络设备还可以包括交换机。在DCN中,主要的帧格式种类主要可以包括在标准以太网帧和标准IP报文基础上承载的各种报文以及基于Switch Fabric化接口的标准以太网帧。In the current DCN, a typical network device may include a network interface card (Network Interface Card, NIC), such as a smart network card (Smart Network Interface Card, SNIC) and a data processing unit (Data Processing Unit, DPU). NICs can be regarded as end-side devices of various networks. Typical network equipment may also include switches. In DCN, the main types of frame formats mainly include various packets carried on the basis of standard Ethernet frames and standard IP packets, and standard Ethernet frames based on Switch Fabricized interfaces.
在基于标准以太网帧和标准IP报文中,首先TCP/IP是目前在DCN中采用最为广泛的协议类型,其次承载在标准IP和标准以太上的RDMA协议也有所增加。在switch fabric化的DCN中,为了提升带宽而采用的基于逐报文负载均衡技术的各种fabric协议,多数也基本采用了标准以太网帧格式来承载。Among standard Ethernet frames and standard IP packets, TCP/IP is currently the most widely used protocol type in DCN, and secondly, the RDMA protocol carried on standard IP and standard Ethernet has also increased. In a switch-fabricized DCN, most of the various fabric protocols based on the packet-by-packet load balancing technology used to increase bandwidth are basically carried by the standard Ethernet frame format.
由于标准以太网在广域网中建立了强大的生态基础,标准以太网帧格式目前在DCN中仍然被广泛使用。在开放式系统互联通信参考模型(OSI)标准七层模型中,标准七层模型中的第一层协议(Layer 1,L1)、标准七层模型中的第二层协议(Layer 2,L2)、标准七层模型中的第三层协议(Layer 3,L3)和标准七层模型中的第四层协议(Layer 4,L4)与DCN网络关系最为紧密。典型配置为L2采用标准以太帧格式,L3采用标准因特网协议版本4(Internet Protocol Version 4,IPv4)或者因特网协议版本6(Internet Protocol Version 6,IPv6),L4采用TCP和用户数据报协议(User Datagram Protocol,UDP)。在UDP协议基础之上还可以包括一种允许通过以太网使用RDMA的网络协议(RDMA over Converged Ethernet Version 2,RoCEv2)和扩展虚拟局域网(Visual extend LAN,VxLAN)协议。Since the standard Ethernet has established a strong ecological foundation in the WAN, the standard Ethernet frame format is still widely used in the DCN. In the Open System Interconnection Reference Model (OSI) standard seven-layer model, the first layer protocol (Layer 1, L1) in the standard seven-layer model, and the second layer protocol (Layer 2, L2) in the standard seven-layer model 1. The third layer protocol (Layer 3, L3) in the standard seven-layer model and the fourth layer protocol (Layer 4, L4) in the standard seven-layer model are most closely related to the DCN network. A typical configuration is that L2 adopts standard Ethernet frame format, L3 adopts standard Internet Protocol Version 4 (Internet Protocol Version 4, IPv4) or Internet Protocol Version 6 (Internet Protocol Version 6, IPv6), and L4 adopts TCP and User Datagram Protocol (User Datagram Protocol) Protocol, UDP). On the basis of the UDP protocol, it can also include a network protocol (RDMA over Converged Ethernet Version 2, RoCEv2) and an extended virtual local area network (Visual extend LAN, VxLAN) protocol that allows the use of RDMA over Ethernet.
基于标准以太帧的Switch Fabric化接口的帧格式中在L2一般采用标准以太网帧,后面跟随各个运营者自己定义的Switch Fabric化私有接口。所谓DCN Switch Fabric化技术,是指各个网络运营者把以前存在于单个网络设备内部的Switch Fabric技术,运用到整个DCN中的一类技术。通过在DCN中使用Switch Fabric技术,带宽效率大为提高,所以各类Switch Fabric化技术在DCN中应用越来越广泛。In the frame format of the Switch Fabricized interface based on standard Ethernet frames, standard Ethernet frames are generally used at L2, followed by the Switch Fabricized private interfaces defined by each operator. The so-called DCN Switch Fabric technology refers to a type of technology in which each network operator applies the Switch Fabric technology that previously existed in a single network device to the entire DCN. Through the use of Switch Fabric technology in DCN, the bandwidth efficiency is greatly improved, so various Switch Fabric technologies are more and more widely used in DCN.
除此之外,在DCN中还存在一类常用的网络帧格式,即商用超级计算机网络协议(Infiniband,IB)帧格式。IB网络时延低,性能好,是超级计算机(High Performance Computer, HPC)网络的首选。但是由于IB网络的规模一般较小,所以IB一般只在HPC或者存储内部网络使用。IB网络存在另外一个问题,就是IB网络无法与以太网的DCN直接互通,导致了采用IB的云网络运维难度增加。In addition, there is also a commonly used network frame format in the DCN, that is, a commercial supercomputer network protocol (Infiniband, IB) frame format. The IB network has low latency and good performance, making it the first choice for supercomputer (High Performance Computer, HPC) networks. However, because the scale of the IB network is generally small, IB is generally only used in HPC or storage internal networks. Another problem with the IB network is that the IB network cannot directly communicate with the DCN of the Ethernet, which makes the operation and maintenance of the cloud network using IB more difficult.
在当前的DCN中,采用的标准以太和IP报文的网络协议,比如VxLAN等。存在着转发时延大,报文格式开销大、冗余字节多等问题。例如L2的标准以太网帧格式虽然存在,但是由于其不参与转发过程,成为冗余开销字段,浪费了网络带宽。此外,L2的标准以太网帧格式虽然不参与转发,但是却参与了控制类报文的解析动作(Parser)和匹配动作(Matching),由此引入了额外的时延开销。In the current DCN, standard Ethernet and IP packet network protocols, such as VxLAN, are used. There are problems such as large forwarding delay, large packet format overhead, and many redundant bytes. For example, although the standard Ethernet frame format of L2 exists, it becomes a redundant overhead field because it does not participate in the forwarding process, wasting network bandwidth. In addition, although the standard Ethernet frame format of L2 does not participate in forwarding, it participates in the parsing action (Parser) and matching action (Matching) of control packets, which introduces additional delay overhead.
一些网络运营者提出了无以太帧格式的报文头。在该方案中,以太报文头被从L2中去掉,转发和交换过程是基于L3的报文头来进行,相较于标准以太帧格式,此方案可以带来提高一些带宽效率并增加部分性能收益。然而,此方案无法兼容现有标准以太的帧格式。在实际使用过程中,现存的软件,管理协议,运维协议,路由协议等,均不兼容,或者需要修改之后才能运行。这带来的系统开销是巨大的。此外,这种方案对于DCN最重要的性能指标,即转发交换过程中的时延开销并没有带来相应的改进。因为无以太帧的IP报文虽然不进行L2处理,但是控制类、管理类、协议类报文和需要低时延的业务报文混合在一起。Some network operators have proposed a packet header without an Ethernet frame format. In this scheme, the Ethernet packet header is removed from L2, and the forwarding and switching process is based on the L3 packet header. Compared with the standard Ethernet frame format, this solution can improve some bandwidth efficiency and increase some performance income. However, this scheme is not compatible with the existing standard Ethernet frame format. In actual use, existing software, management protocols, operation and maintenance protocols, routing protocols, etc. are not compatible, or need to be modified before they can run. The system overhead caused by this is huge. In addition, this solution does not bring corresponding improvement to the most important performance index of DCN, that is, the delay overhead in the process of forwarding and switching. Although IP packets without Ethernet frames are not processed at L2, control, management, and protocol packets are mixed together with service packets that require low latency.
IB网络采用了自有L2帧格式和IPv6做L3转发,能够带来较好的网络性能和较低时延。但是IB网络组网规模小,远远逊色于以太网DCN的大规模组网能力。此外,IB网络也无法与以太网兼容。IB网络与以太网的互通需要通过特定网关来实现。专门的协议网关的存在,不仅影响互通性能,而且给DCN的整体规范性带来破坏,使得云网络(即云DCN)的运营维护变得麻烦,DCN的后期运营成本也因此而提高。The IB network uses its own L2 frame format and IPv6 for L3 forwarding, which can bring better network performance and lower delay. However, the IB network is small in scale, which is far inferior to the large-scale networking capability of Ethernet DCN. In addition, the IB network is not compatible with Ethernet. The intercommunication between IB network and Ethernet needs to be realized through a specific gateway. The existence of a dedicated protocol gateway not only affects the intercommunication performance, but also brings damage to the overall standardization of the DCN, making the operation and maintenance of the cloud network (that is, cloud DCN) troublesome, and the post-operation cost of the DCN is also increased.
因此,本公开的实施例提供一种用于转发报文的方法。该方法包括交换机从网络接口卡接收报文。该方法还包括交换机基于所述报文的帧格式中的目的地媒体访问控制域中的可配置参数,确定所述报文的报文类型。该方法还包括交换机基于所确定的报文类型转发所述报文。由此,交换机能够实现对于不同类型的报文的不同处理进程,例如可以对于采用简化的以太报文采用简化的转发过程,而对于常规报文采用其他转发方式。以此方式,能够实现报文的加速转发以降低转发过程中的时延。Therefore, embodiments of the present disclosure provide a method for forwarding packets. The method includes the switch receiving the message from the network interface card. The method further includes the switch determining the message type of the message based on a configurable parameter in the destination media access control field in the frame format of the message. The method also includes the switch forwarding the message based on the determined message type. Thus, the switch can implement different processing processes for different types of messages, for example, a simplified forwarding process can be used for simplified Ethernet messages, and other forwarding methods can be used for regular messages. In this way, accelerated forwarding of packets can be realized to reduce the time delay in the forwarding process.
图1示出了可以实施本申请的一个实施方式的示例环境的示意图。如图1所示,环境100可以包括NIC 110-1、110-2和110-3。NIC 110-1、110-2和110-3在下文中也可以被统称为NIC 110。NIC 110-1、110-2和110-3可以分别被承载在服务器101-1、101-2以及101-3上。应当理解,NIC 110可以以多种形式来实现。例如,NIC 110可以被实现为包括但不局限于SNIC DPU、智能架顶(ToR)交换机以及智能边缘交换机等。Figure 1 shows a schematic diagram of an example environment in which one embodiment of the present application may be implemented. As shown in FIG. 1, environment 100 may include NICs 110-1, 110-2, and 110-3. NICs 110-1, 110-2 and 110-3 may also be collectively referred to as NIC 110 hereinafter. NICs 110-1, 110-2, and 110-3 may be hosted on servers 101-1, 101-2, and 101-3, respectively. It should be understood that NIC 110 may be implemented in a variety of forms. For example, NIC 110 may be implemented including, but not limited to, a SNIC DPU, an intelligent top-of-rack (ToR) switch, and an intelligent edge switch, among others.
环境100可以还包括交换机120-1、120-2、120-3、120-4以及120-5。交换机120-1、120-2、120-3、120-4以及120-5在下文中也可以被统称为交换机120。在环境100中,交换机120-1、120-2、120-3、120-4以及120-5可以被视作第一级交换机(也被称作ToR交换机)。如图1所示,NIC 110-1、110-2和110-3可以分别和交换机120-1、120-2和120-3进行数据传输。交换机120-1、120-2和120-3可以和交换机120-4以及120-5分别进行数据传输。应当理解,交换机120可以以多种形式来实现。例如,交换机120可以被实现为包括但不局限于ToR交换机、叶交换机(leaf switch)、骨干交换机(spine switch)以及核心交换机(core switch)等。 Environment 100 may also include switches 120-1, 120-2, 120-3, 120-4, and 120-5. The switches 120 - 1 , 120 - 2 , 120 - 3 , 120 - 4 and 120 - 5 may also be collectively referred to as switches 120 hereinafter. In environment 100, switches 120-1, 120-2, 120-3, 120-4, and 120-5 may be considered first-level switches (also referred to as ToR switches). As shown in FIG. 1, NICs 110-1, 110-2, and 110-3 can perform data transmission with switches 120-1, 120-2, and 120-3, respectively. The switches 120-1, 120-2 and 120-3 can respectively perform data transmission with the switches 120-4 and 120-5. It should be understood that switch 120 may be implemented in a variety of forms. For example, the switch 120 may be implemented to include but not limited to a ToR switch, a leaf switch (leaf switch), a spine switch (spine switch), and a core switch (core switch).
应当理解,环境100所包括的NIC和交换机并不局限于在图1中所示出的那样。环境100可以包括任意数目的NIC和交换机。环境100仅用于示例性目的,而不暗示对于本公开的范围的任何限制。本公开的实施例还可以被体现在其他网络环境或架构中。另外,还应当理解, 环境100还可以包括用于实现通信连接、数据传输等目的的其他元件或实体。为了简化描述,在图1中并未示出这些元件或实体,但不意味着本公开的实施例不具备它们。It should be understood that the NICs and switches included in environment 100 are not limited to those shown in FIG. 1 . Environment 100 may include any number of NICs and switches. Environment 100 is for exemplary purposes only and does not imply any limitation as to the scope of the present disclosure. Embodiments of the present disclosure may also be embodied in other network environments or architectures. In addition, it should also be understood that the environment 100 may also include other elements or entities for realizing communication connection, data transmission and other purposes. In order to simplify the description, these elements or entities are not shown in FIG. 1 , but it does not mean that the embodiments of the present disclosure do not have them.
本公开的基本构想和原理可以通过图2至图5被详细的阐述。图2示出了根据本公开的实施例的示例性报文转发过程的信令图200。在下文中,首先结合图2详细阐述根据本公开的实施例报文转发过程中在NIC 110和交换机120之间的信息交互。为了清楚起见,该报文转发过程将结合图1示出的环境100进行描述。The basic idea and principle of the present disclosure can be explained in detail through FIGS. 2 to 5 . FIG. 2 shows a signaling diagram 200 of an exemplary message forwarding process according to an embodiment of the present disclosure. In the following, the information interaction between the NIC 110 and the switch 120 during the message forwarding process according to the embodiment of the present disclosure will be described in detail first with reference to FIG. 2 . For clarity, the message forwarding process will be described in conjunction with the environment 100 shown in FIG. 1 .
如图2所示,NIC 110可以确定报文的帧格式中的目的地媒体访问控制域中的可配置参数并根据可配置参数来生成(205)报文。该可配置参数可以和报文的报文类型相关联。该报文类型可以包括有简化的以太帧格式的第一类型报文。该报文类型还可以包括具有标准以太帧格式的第二类型报文。As shown in FIG. 2, the NIC 110 may determine the configurable parameters in the destination MAC field in the frame format of the message and generate (205) the message according to the configurable parameters. The configurable parameter may be associated with the message type of the message. The packet type may include a first type packet in a simplified Ethernet frame format. The packet type may also include a second type packet in a standard Ethernet frame format.
在一些实施例中,NIC 110可以基于与要生成的报文相关联的业务类型来确定要生成何种类型的报文。例如,如果要生成的报文所对应的业务是要求低延迟的业务,NIC 110可以确定要生成的报文为第一类型报文。而如果要生成的报文对应的业务是控制类、协议类、运营维护类、管理类业务,则NIC 110可以确定要生成的报文为第二类型报文。In some embodiments, NIC 110 may determine what type of message to generate based on the type of traffic associated with the message to be generated. For example, if the service corresponding to the message to be generated is a service requiring low delay, the NIC 110 may determine that the message to be generated is the first type of message. And if the service corresponding to the message to be generated is a control class, a protocol class, an operation and maintenance class, or a management service, then the NIC 110 may determine that the message to be generated is a second type of message.
在一些实施例中,如果NIC 110要生成简化的以太帧格式的报文,NIC 110可以在报文的帧格式中的目的地媒体访问控制(Destination MAC address,DMAC)域中配置对应于简化的以太帧格式的可配置参数。例如,NIC 110可以获取与第一类型报文相关联的参考帧格式中的DMAC域的一组预定参数。这些预定参数可以被预先配置给NIC 110。NIC可以从获取到的一组预定参数中选择要被配置到报文的帧格式中的DMAC域的参数。In some embodiments, if the NIC 110 is to generate a packet in a simplified Ethernet frame format, the NIC 110 can configure the corresponding simplified Ethernet frame format in the destination media access control (Destination MAC address, DMAC) domain in the frame format of the packet. Configurable parameters for the Ethernet frame format. For example, NIC 110 may obtain a set of predetermined parameters of the DMAC field in the reference frame format associated with the first type of message. These predetermined parameters may be preconfigured to NIC 110. The NIC may select parameters to be configured in the DMAC field in the frame format of the message from a set of acquired predetermined parameters.
图3A和图3B分别示出了根据本公开的实施例的示例报文类型的示意图。图3A示出了标准以太帧格式的一个实例,而图3B示出了简化的以太帧格式的一个实例。FIG. 3A and FIG. 3B respectively show schematic diagrams of example packet types according to an embodiment of the present disclosure. Figure 3A shows an example of a standard Ethernet frame format, while Figure 3B shows an example of a simplified Ethernet frame format.
如图3A所示,标准以太帧格式可以包括以太头310。在以太头310中可以包括DMAC域字段311,源媒体访问控制(SMAC)域字段312,VLAN字段313以及以太网帧的效验(FCS)域字段314等。DMAC域字段311可以包括关于报文被转发的目的地地址的信息,SMAC域字段312可以包括关于报文的源地址的信息,FCS域字段可以包括用于检查以太网帧在转发过程中的错误的校验信息。As shown in FIG. 3A , a standard Ethernet frame format may include an Ethernet header 310 . The Ethernet header 310 may include a DMAC field 311 , a source media access control (SMAC) field 312 , a VLAN field 313 , and an Ethernet frame checksum (FCS) field 314 and the like. The DMAC domain field 311 can include information about the destination address that the message is forwarded, the SMAC domain field 312 can include information about the source address of the message, and the FCS domain field can include information for checking the Ethernet frame for errors in the forwarding process. verification information.
如图3B所示,简化的以太帧格式的以太头320可以包括DMAC域字段321,在该字段中配置有如上文所述的用于第一类型报文的预定DMAC域参数。相较于标准以太帧格式,简化的以太帧格式的一种可能的形式是,简化的以太帧格式中的以太头可以不包含除FCS域字段322之外的任何L2字段。此外,在简化的以太帧格式的另一种可能的形式中,简化的以太帧格式中的以太头可以不包含除FCS域字段322和一个VLAN字段(未示出)之外的任何L2字段。As shown in FIG. 3B , the Ethernet header 320 of the simplified Ethernet frame format may include a DMAC domain field 321 , in which the predetermined DMAC domain parameters for the first type of message as described above are configured. Compared with the standard Ethernet frame format, one possible form of the simplified Ethernet frame format is that the Ethernet header in the simplified Ethernet frame format may not contain any L2 fields except the FCS field 322 . Furthermore, in another possible form of the simplified Ethernet frame format, the Ethernet header in the simplified Ethernet frame format may not contain any L2 fields except the FCS domain field 322 and a VLAN field (not shown).
虽然简化的以太帧格式相较于标准以太帧格式对一些字段进行了简化,但本质上仍然在传统以太头的框架下,因此采用简化的以太帧格式的报文和采用标准以太帧格式的报文不仅可以互通,而且可以共存。因此,通过对DMAC的特定定义,可以在支持报文以简化的以太帧格式的同时,兼容标准以太报文已有的丰富生态。而兼容收发标准以太网帧格式,就意味着兼容了广泛的、生机勃勃的以太网生态。Although the simplified Ethernet frame format simplifies some fields compared with the standard Ethernet frame format, it is still in the framework of the traditional Ethernet header in essence. Therefore, the simplified Ethernet frame format and the standard Ethernet frame format Text can not only communicate with each other, but also coexist. Therefore, through the specific definition of DMAC, it is possible to support the simplified Ethernet frame format of the message while being compatible with the existing rich ecology of the standard Ethernet message. Compatibility with the standard Ethernet frame format for sending and receiving means that it is compatible with a wide range of vibrant Ethernet ecosystems.
由此可见,NIC能够通过配置报文的帧格式中的特定域的参数来在不改变原有帧格式的基础上实现一种简化的以太报文。这种简化的以太报文可以显著降低在转发处理过程中的复杂程度,提高带宽效率并降低时延。It can be seen that the NIC can realize a simplified Ethernet message without changing the original frame format by configuring the parameters of the specific field in the frame format of the message. This simplified Ethernet message can significantly reduce the complexity of the forwarding process, improve bandwidth efficiency and reduce delay.
在DCN中,当前的主流的负载分担技术是以等价多路径(Equal-cost multi-path,ECMP) 为代表的逐流负载分担方式。ECMP涉及一种流级的负载均衡策略,可以降低网络上的突发以及减少拥塞。不过这种负载分担方式带宽效率低,因此逐报文负载分担(Packet-based Dynamic Load Balance)方式会渐渐成为DCN内负载分担方式的主流。为了实现逐报文负载分担方式,可以在第一类型报文中引入Switch Fabric。In DCN, the current mainstream load sharing technology is a flow-by-flow load sharing method represented by Equal-cost multi-path (ECMP). ECMP involves a flow-level load balancing strategy that can reduce bursts and congestion on the network. However, the bandwidth efficiency of this load sharing method is low, so the Packet-based Dynamic Load Balance method will gradually become the mainstream of load sharing methods in DCN. To implement packet-by-packet load balancing, switch fabric can be introduced into the first type of packets.
在一些实施例中,NIC 110所生成的第一类型报文的以太帧格式的以太头330还可以包括与Switch Fabric相关联的字段。图3C示出了根据本公开的实施例的示例报文类型的示意图。如图3C所示,以太头330除了DMAC域字段331和FCS字段之外还可以包括Switch Fabric头332。该Switch Fabric头332可以实施逐报文负载分担技术,不仅字节开销小、带宽效率高,而且处理迅速、时延低。基于逐报文负载分担技术的Switch Fabric化接口可以包括携带多个逐跳交换端口号的源路由技术和在每跳进行线性表查找目的端口号的交换网技术。In some embodiments, the Ethernet header 330 in the Ethernet frame format of the first type message generated by the NIC 110 may also include fields associated with Switch Fabric. FIG. 3C shows a schematic diagram of example message types according to an embodiment of the disclosure. As shown in FIG. 3C , the Ethernet header 330 may include a Switch Fabric header 332 in addition to the DMAC domain field 331 and the FCS field. The Switch Fabric head 332 can implement packet-by-packet load sharing technology, which not only has low byte overhead, high bandwidth efficiency, but also fast processing and low time delay. The Switch Fabric interface based on packet-by-packet load sharing technology can include source routing technology that carries multiple hop-by-hop switching port numbers and switching network technology that performs a linear table search for the destination port number at each hop.
再次参考图2,在生成报文之后,NIC 110将所生成的报文发送(210)到交换机120。Referring again to FIG. 2, after generating the message, NIC 110 sends (210) the generated message to switch 120.
在接收到来自NIC 110的报文之后,交换机120可以确定(215)所接收的报文转发方式。交换机120可以根据所接收的报文的帧格式中的DMAC域中的可配置参数来确定报文的转发方式。After receiving a message from NIC 110, switch 120 may determine (215) how to forward the received message. The switch 120 may determine the forwarding mode of the message according to the configurable parameters in the DMAC domain in the frame format of the received message.
在一些实施例中,例如,如果交换机120可以确定DMAC域中的可配置参数是否与第一类型报文的参考帧格式中的DMAC域的预定参数相匹配。如果确定所接收的报文的帧格式的DMAC域中的可配置参数与预定参数相匹配,则交换机120可以确定所接收的报文属于第一类型报文。如果确定所接收的报文的帧格式的DMAC域中的可配置参数与预定参数不匹配,则交换机120可以确定所接收的报文属于第二类型报文。In some embodiments, for example, if the switch 120 can determine whether the configurable parameters in the DMAC field match the predetermined parameters in the DMAC field in the reference frame format of the first type message. If it is determined that the configurable parameters in the DMAC domain of the frame format of the received message match the predetermined parameters, the switch 120 may determine that the received message belongs to the first type of message. If it is determined that the configurable parameters in the DMAC domain of the frame format of the received message do not match the predetermined parameters, the switch 120 may determine that the received message belongs to the second type of message.
交换机120可以针对不同的报文类型来转发报文。针对第一类型报文,即具有简化的以太帧格式的报文,交换机120可以跳过处理报文的中间过程而对报文进行直接转发,由此获得极佳的超低时延特性。该中间过程例如可以包括报文解析、控制管理协议类报文匹配和本地报文匹配等。针对第二类型报文,即具有标准以太帧格式的报文,交换机120可以采用报文解析等通路进行常规的以太报文转发处理。The switch 120 can forward packets according to different packet types. For the first type of message, that is, the message with a simplified Ethernet frame format, the switch 120 can skip the intermediate process of processing the message and directly forward the message, thereby obtaining excellent ultra-low delay characteristics. The intermediate process may include, for example, packet parsing, control management protocol packet matching, local packet matching, and the like. For the second type of message, that is, a message with a standard Ethernet frame format, the switch 120 can perform conventional Ethernet message forwarding processing by using channels such as message analysis.
如上文中已经描述的,报文类型取决于报文所涉及的业务类型。第一类型报文可以涉及与要求低时延业务相关联的报文,而第二类型报文可以涉及控制类报文、协议类报文、运维类、管理类报文以及以标准以太格式封装的普通业务报文。As described above, the message type depends on the service type involved in the message. The first type of packets may involve packets associated with low-latency services, while the second type of packets may involve control packets, protocol packets, operation and maintenance Encapsulated ordinary service packets.
图4示出了根据本公开的实施例的确定报文转发方式的一个实例。如图4所示,交换机在接收到报文401之后,会确定该报文的报文类型。如果确定该报文是第一类型报文,则该报文直接进行转发或交换(430)步骤。而如果交换机确定该报文是第二类型报文,则该报文首先进行报文解析(410)和控制报文和本地报文匹配(420)等报文中间处理过程,之后经过中间处理的报文才会进行转发和交换(430)步骤。Fig. 4 shows an example of determining a packet forwarding manner according to an embodiment of the present disclosure. As shown in FIG. 4, after receiving the message 401, the switch will determine the message type of the message. If it is determined that the message is the first type message, then the message is directly forwarded or exchanged (430). And if switch determines that this message is the second type of message, then this message at first carries out message intermediate processing processes such as message parsing (410) and control message and local message matching (420), and then through intermediate processing The message will be forwarded and exchanged (430).
由此可见,相较于第二类型报文,第一类型报文可以被更快的转发,这可以显著降低由于对报文进行中间过程而造成的时延。此外,由于第一类型报文的简化的以太帧格式定义得相比于第二类型报文的标准以太更简洁,因此能够实现链路带宽的提升。It can be seen that, compared with the second type of message, the first type of message can be forwarded faster, which can significantly reduce the delay caused by the intermediate process of the message. In addition, since the simplified Ethernet frame format of the first-type message is defined more concisely than the standard Ethernet of the second-type message, link bandwidth can be improved.
在确定报文的转发方式后,交换机120可以转发或交换从NIC 110处接收的报文。如上文所述,针对第一类型报文,由于在第一类型报文的帧格式的以太头中包括具有特定参数的DMAC域字段,并且在该以太头中除了FCS字段外不再包括其他L2字段,因此交换机120可以采用简化的转发过程。而对于第二类型报文,虽然其具有标准以太帧格式,在本申请中也提出了一种相对简化的转发过程。After determining the forwarding mode of the message, the switch 120 can forward or exchange the message received from the NIC 110. As mentioned above, for the first type of message, since the Ethernet header of the frame format of the first type of message includes the DMAC domain field with specific parameters, and no other L2 field is included in the Ethernet header except the FCS field. field, so the switch 120 can adopt a simplified forwarding process. As for the second type of message, although it has a standard Ethernet frame format, a relatively simplified forwarding process is also proposed in this application.
在一些实施例中,如果交换机120确定要被转发的报文属于第一类型报文,则交换机120 可以确定与报文的目标地址相关联的输出端口号并基于该输出端口号转发第一类型报文。In some embodiments, if the switch 120 determines that the packet to be forwarded belongs to the first type of packet, the switch 120 may determine the output port number associated with the destination address of the packet and forward the first type of packet based on the output port number. message.
如果交换机120确定要被转发的报文属于第二类型报文,则交换机可以通过对报文进行入方向处理操作确定该报文是否允许经由交换机120被转发到报文的目标设备。如果交换机120确定该报文允许经由所述交换机被转发到所述报文的所述目标设备,则交换机120可以与报文的目标地址相关联的输出端口号并基于该输出端口号转发第二类型报文。If the switch 120 determines that the packet to be forwarded belongs to the second type of packet, the switch may determine whether the packet is allowed to be forwarded to the destination device of the packet by performing an inbound processing operation on the packet. If the switch 120 determines that the message is allowed to be forwarded to the target device of the message via the switch, the switch 120 may forward the second output port number associated with the target address of the message based on the output port number. type message.
为了进一步说明对于第一类型报文和第二类型报文的转发过程的简化,以下结合图5详细阐述简化转发流程与常规转发过程的区别。图5示出了根据本公开的实施例的报文转发过程的示意图。In order to further illustrate the simplification of the forwarding process of the first type message and the second type message, the difference between the simplified forwarding process and the conventional forwarding process will be described in detail below in conjunction with FIG. 5 . Fig. 5 shows a schematic diagram of a packet forwarding process according to an embodiment of the present disclosure.
如图5所示,DCN中标准的转发过程510可以包括入端口处理511、入方向L2处理512、入方向访问控制列表(ACL)检查513,L3转发514、转发关联数据515、出方向ACL检查516、出方向L2处理517以及出端口处理518。As shown in Figure 5, the standard forwarding process 510 in DCN may include inbound port processing 511, inbound L2 processing 512, inbound access control list (ACL) check 513, L3 forwarding 514, forwarding associated data 515, outbound ACL check 516 , outbound direction L2 processing 517 and outbound port processing 518 .
在针对具有标准以太帧格式的第二类型报文的转发过程520中,可以省略入端口处理521以降低时延。可选的,可以在入端口处理521仅执行端口属性处理,从而通过一次线性表(LT)查找获取全部的端口属性。在入方向L2处理522中,可以采用三态内容寻址存储器(TCAM)来执行入方向L2处理。TCAM的匹配规格较小,能够进一步缩短时延。In the forwarding process 520 for the second-type packet with the standard Ethernet frame format, the inbound port processing 521 can be omitted to reduce the delay. Optionally, only port attribute processing may be performed in the ingress port processing 521, so as to obtain all port attributes through a linear table (LT) lookup. In inbound L2 processing 522 , tri-state content addressable memory (TCAM) may be employed to perform inbound L2 processing. The matching specifications of the TCAM are small, which can further shorten the delay.
在一些实施例中,交换机120在L3转发523过程中可以采用精确匹配(EM)来查找主机地址或者网段地址对应的输出端口号。在同一个DCN内,网段地址为可配置的预定比特长度掩码。In some embodiments, the switch 120 may use exact match (EM) to find the output port number corresponding to the host address or network segment address during the L3 forwarding 523 process. In the same DCN, the address of the network segment is a configurable mask with a predetermined bit length.
在一些实施例中,交换机120在L3转发523过程中也可以采用LT查找来确定主机地址或者网段地址的对应输出端口号。同样的,在同一个DCN内,网段地址为可配置的预定比特长度掩码。In some embodiments, the switch 120 may also use the LT lookup to determine the corresponding output port number of the host address or network segment address during the L3 forwarding 523 process. Similarly, within the same DCN, the address of the network segment is a configurable mask with a predetermined bit length.
在本申请中,为了实施对IP地址的线性查表,可以采用IP地址线性排布的方法。例如,对于32比特的IPv4或者128比特的IPv6地址,只取有限的比特来进行IP地址分配,并且在转发过程中,只基于这些比特进行LT查找,以实现较快的查找速度。In this application, in order to implement a linear table lookup of IP addresses, a method of linearly arranging IP addresses may be used. For example, for a 32-bit IPv4 or 128-bit IPv6 address, only limited bits are used for IP address allocation, and in the forwarding process, only these bits are used for LT lookup, so as to achieve a faster lookup speed.
之后,交换机120可以进行转发关联数据524过程和出端口处理525过程。Afterwards, the switch 120 may perform the process of forwarding associated data 524 and the process of egress port processing 525 .
可以看出,相较于标准的转发过程510,针对具有标准以太帧格式的第二类型报文的转发过程520省略了在DCN中标准的转发过程510中包括的入方向ACL检查,出方向ACL检查和出方向L2处理。因此可以降低交换机转发过程中处理报文的复杂程度,显著降低时延。It can be seen that compared with the standard forwarding process 510, the forwarding process 520 for the second type message with the standard Ethernet frame format omits the inbound ACL check included in the standard forwarding process 510 in the DCN, and the outbound ACL Check and out direction L2 processing. Therefore, the complexity of packet processing during switch forwarding can be reduced, and the delay can be significantly reduced.
在针对具有简化的以太帧格式的第一类型报文的转发过程530中,也可以省略入端口处理531以降低时延。可选的,可以在入端口处理531仅执行端口属性处理,从而通过一次线性表(LT)查找获取全部的端口属性。In the forwarding process 530 for the first-type packet with the simplified Ethernet frame format, the ingress port processing 531 can also be omitted to reduce the delay. Optionally, only port attribute processing may be performed in the ingress port processing 531, so as to obtain all port attributes through a linear table (LT) lookup.
由于在第一类型报文的帧格式的以太头中包括具有特定参数的DMAC域字段,并且在该以太头中除了FCS字段外不再包括其他L2字段,因此在转发过程530中可以省略在DCN中标准的转发过程510中包括的入方向L2处理。Since the Ethernet header of the frame format of the first type of message includes the DMAC domain field with specific parameters, and no other L2 fields are included in the Ethernet header except the FCS field, the DCN field can be omitted in the forwarding process 530. The inbound direction L2 processing included in the standard forwarding process 510 .
在转发过程530中的L3转发532可以如转发过程520中的L3转发523一样执行类似操作。在一些实施例中,交换机120在L3转发532过程中可以采用精确匹配(EM)来查找主机地址或者网段地址对应的输出端口号。在同一个DCN内,网段地址为可配置的预定比特长度掩码。在一些实施例中,交换机120在L3转发532过程中也可以采用LT查找来确定主机地址或者网段地址的对应输出端口号。同样的,在同一个DCN内,网段地址为可配置的预定比特长度掩码。L3 forwarding 532 in forwarding process 530 may perform similar operations as L3 forwarding 523 in forwarding process 520 . In some embodiments, the switch 120 may use exact match (EM) to find the output port number corresponding to the host address or network segment address during the L3 forwarding 532 process. In the same DCN, the address of the network segment is a configurable mask with a predetermined bit length. In some embodiments, the switch 120 may also use the LT lookup to determine the corresponding output port number of the host address or network segment address during the L3 forwarding 532 process. Similarly, within the same DCN, the address of the network segment is a configurable mask with a predetermined bit length.
同样的,为了实施对IP地址的线性查表,可以采用IP地址线性排布的方法。例如,对 于32比特的IPv4或者128比特的IPv6地址,只取有限的比特来进行IP地址分配,并且在转发过程中,只基于这些比特进行LT查找,以实现较快的查找速度。Similarly, in order to implement a linear table lookup of IP addresses, a method of linearly arranging IP addresses can be used. For example, for a 32-bit IPv4 or 128-bit IPv6 address, only limited bits are used for IP address allocation, and in the forwarding process, only these bits are used for LT search to achieve a faster search speed.
之后,交换机120可以进行转发关联数据533过程和出端口处理534过程。Afterwards, the switch 120 may perform the process of forwarding associated data 533 and the process of egress port processing 534 .
由于相较于针对具有标准以太帧格式的第二类型报文的转发过程520而言,在针对具有简化的以太帧格式的第一类型报文的转发过程530进一步缩减了步骤,因此在报文转发中由于处理报文造成的时延可以被进一步降低。Since compared with the forwarding process 520 for the second type message with the standard Ethernet frame format, the steps are further reduced in the forwarding process 530 for the first type message with the simplified Ethernet frame format, so in the message The delay caused by processing packets during forwarding can be further reduced.
根据本申请的实施例的方案,一方面,NIC能够通过配置报文的帧格式中的特定域的参数来在不改变原有帧格式的基础上实现一种简化的以太报文。因此采用简化的以太帧格式的报文和采用标准以太帧格式的报文不仅可以互通,而且可以共存。这种简化的以太报文可以显著降低在转发处理过程中的复杂程度,提高带宽效率并降低时延。According to the solutions of the embodiments of the present application, on the one hand, the NIC can implement a simplified Ethernet message without changing the original frame format by configuring parameters in specific fields in the frame format of the message. Therefore, the packets using the simplified Ethernet frame format and the packets using the standard Ethernet frame format can not only intercommunicate, but also coexist. This simplified Ethernet message can significantly reduce the complexity of the forwarding process, improve bandwidth efficiency and reduce delay.
另一方面,交换机能够根据报文帧格式中的特定位置的参数确定报文的类型并基于所确定的报文类型来转发报文。因此交换机能够实现对于不同类型的报文的不同处理进程,例如可以对于采用简化的以太报文采用简化的转发过程,而对于常规报文采用其他转发方式。以此方式,能够实现报文的加速转发以降低转发过程中的时延。On the other hand, the switch can determine the type of the message according to the parameter at a specific position in the message frame format and forward the message based on the determined message type. Therefore, the switch can implement different processing processes for different types of messages, for example, a simplified forwarding process can be used for simplified Ethernet messages, and other forwarding methods can be used for regular messages. In this way, accelerated forwarding of packets can be realized to reduce the time delay in the forwarding process.
图6示出了根据本公开的实施例的用于转发报文的方法600的流程图。在图6中示出的测量方法可以被实施在图1中的交换机120处。Fig. 6 shows a flowchart of a method 600 for forwarding packets according to an embodiment of the present disclosure. The measurement method shown in FIG. 6 can be implemented at the switch 120 in FIG. 1 .
在框610,交换机120从网络接口卡110接收报文。At block 610 , the switch 120 receives the message from the network interface card 110 .
在框620,交换机120根据报文的帧格式中的目的地媒体访问控制域中的可配置参数来转发报文。该可配置参数与所述报文的报文类型相关联,所述报文类型包括具有简化的以太帧格式的第一类型报文以及具有标准以太帧格式的第二类型报文。At block 620, the switch 120 forwards the message according to configurable parameters in the destination MAC field in the frame format of the message. The configurable parameter is associated with the message type of the message, and the message type includes a first type message with a simplified Ethernet frame format and a second type message with a standard Ethernet frame format.
在一些实施例中,交换机120可以将所述可配置参数与所述第一类型报文的参考帧格式中的目的地媒体访问控制域的预定参数进行比较。如果确定可配置参数与所述预定参数相匹配,则交换机120将接收的所述报文确定为第一类型报文。交换机120可以确定与所述报文的目标地址相关联的输出端口号并且基于所述输出端口号转发所述报文。In some embodiments, the switch 120 may compare the configurable parameter with the predetermined parameter of the destination MAC field in the reference frame format of the first type packet. If it is determined that the configurable parameter matches the predetermined parameter, the switch 120 determines the received packet as the first type packet. Switch 120 may determine an output port number associated with the destination address of the message and forward the message based on the output port number.
在一些实施例中,交换机120可以将所述可配置参数与所述第一类型报文的参考帧格式中的目的地媒体访问控制域的预定参数进行比较。如果确定可配置参数与所述预定参数不匹配,则交换机120将接收的报文确定为第二类型报文。交换机120可以通过对所述报文进行入方向处理操作确定所述报文是否允许经由所述交换机被转发到所述报文的目标设备。如果确定所述报文经由所述交换机被转发到所述报文的所述目标设备,交换机120可以确定与所述报文的目标地址相关联的输出端口号并基于所述输出端口号转发所述报文。In some embodiments, the switch 120 may compare the configurable parameter with the predetermined parameter of the destination MAC field in the reference frame format of the first type packet. If it is determined that the configurable parameter does not match the predetermined parameter, the switch 120 determines the received packet as the second type packet. The switch 120 may determine whether the packet is allowed to be forwarded to the target device of the packet by performing an inbound processing operation on the packet. If it is determined that the message is forwarded to the target device of the message via the switch, the switch 120 may determine an output port number associated with the target address of the message and forward the message based on the output port number. report message.
在一些实施例中,交换机120从所述报文的所述帧格式中获取目标地址,所述目标地址包括要接收所述报文的目标设备的地址,或与所述目标设备有关的目标网段的地址。交换机120通过基于所述目标地址进行精确匹配操作或线性表查找操作来确定所述输出端口号。In some embodiments, the switch 120 obtains the target address from the frame format of the message, and the target address includes the address of the target device to receive the message, or the target network address related to the target device. segment address. The switch 120 determines the output port number by performing an exact match operation or a linear table lookup operation based on the target address.
在一些实施方式中,目标网段的地址包括可配置的预定长度比特掩码。In some embodiments, the address of the target network segment includes a configurable bitmask of predetermined length.
在一些实施方式中,交换机120通过三态内容寻址存储器匹配操作对所述报文进行入方向处理操作。In some implementation manners, the switch 120 performs an inbound processing operation on the packet through a tri-state content-addressable memory matching operation.
通过结合图6所描述的用于转发报文的方法,交换机能够实现对于不同类型的报文的不同处理进程。以此方式,能够实现报文的加速转发以降低转发过程中的时延。By combining the method for forwarding packets described in FIG. 6 , the switch can implement different processing processes for different types of packets. In this way, accelerated forwarding of packets can be realized to reduce the time delay in the forwarding process.
图7示出了根据本公开的实施例的用于转发报文的方法700的流程图。在图8中示出的测量方法可以被实施在图1中的NIC 110处。Fig. 7 shows a flow chart of a method 700 for forwarding packets according to an embodiment of the present disclosure. The measurement method shown in FIG. 8 may be implemented at the NIC 110 in FIG. 1 .
在框710,NIC 110确定所述报文的帧格式中的目的地媒体访问控制域中的可配置参数。 该可配置参数与所述报文的报文类型相关联,所述报文类型包括具有简化的以太帧格式的第一类型报文以及具有标准以太帧格式的第二类型报文。At block 710, NIC 110 determines configurable parameters in the destination media access control field in the frame format of the message. The configurable parameter is associated with the message type of the message, and the message type includes a first type message with a simplified Ethernet frame format and a second type message with a standard Ethernet frame format.
在一些实施例中,NIC 110确定要被封装到所述报文的数据分组的类型并基于所述数据分组的类型确定可配置参数。In some embodiments, NIC 110 determines the type of data packet to be encapsulated into the message and determines a configurable parameter based on the type of data packet.
在一些实施例中,如果确定要生成的所述报文是第一类型报文,NIC 110获取与第一类型报文相关联的参考帧格式中的目的地媒体访问控制域的一组预定参数并且从所述一组预定参数中确定所述可配置参数。In some embodiments, if it is determined that the message to be generated is the first type message, the NIC 110 acquires a set of predetermined parameters of the destination MAC field in the reference frame format associated with the first type message And determining said configurable parameter from said set of predetermined parameters.
在框720,NIC 110基于所述可配置参数生成所述报文。At block 720, the NIC 110 generates the message based on the configurable parameters.
在框730,NIC 110将所述报文发送到交换机。At block 730, the NIC 110 sends the message to the switch.
通过结合图7所描述的用于报文转发的方法,能够通过配置报文的帧格式中的特定域的参数来在不改变原有帧格式的基础上实现一种简化的以太报文。因此采用简化的以太帧格式的报文和采用标准以太帧格式的报文不仅可以互通,而且可以共存。这种简化的以太报文可以显著降低在转发处理过程中的复杂程度,提高带宽效率并降低时延。By combining the method for message forwarding described in FIG. 7 , a simplified Ethernet message can be realized without changing the original frame format by configuring parameters in specific fields in the frame format of the message. Therefore, the packets using the simplified Ethernet frame format and the packets using the standard Ethernet frame format can not only intercommunicate, but also coexist. This simplified Ethernet message can significantly reduce the complexity of the forwarding process, improve bandwidth efficiency and reduce delay.
图8示出了根据本公开的示例实施例的通信装置800的框图。通信装置800可以被实现为图1所示的NIC 110、交换机120、上述设备的一部分或上述设备中的芯片等。应当理解的是,通信装置800仅用于示例性目的,而不暗示对于本公开的范围的任何限制。本公开的实施例还可以被体现在不同的通信装置中。另外,还应当理解,通信装置800还可以包括其他元件、模块或实体,出于清楚的目的未被示出,但不意味着本公开的实施例不具备这些元件或实体。本公开的范围在此方面不受限制。FIG. 8 shows a block diagram of a communication device 800 according to an example embodiment of the present disclosure. The communication device 800 may be implemented as the NIC 110 shown in FIG. 1 , the switch 120, a part of the above equipment or a chip in the above equipment, etc. It should be understood that the communication device 800 is used for exemplary purposes only and does not imply any limitation on the scope of the present disclosure. Embodiments of the present disclosure may also be embodied in different communication devices. In addition, it should also be understood that the communication device 800 may also include other elements, modules or entities, which are not shown for the purpose of clarity, but it does not mean that the embodiments of the present disclosure do not have these elements or entities. The scope of the present disclosure is not limited in this respect.
如图8所示,通信装置800包括输入输出接口810以及逻辑电路820。输入输出接口810被耦合至逻辑电路820。在本公开的实施例中,输入输出接口810可以被集成在一起用于实现收发功能,也可以作为独立的部件分别实现为用于接收的输入接口和用于发送的输出接口。例如,图8所示的输入输出接口810是一种集成的示例实现。As shown in FIG. 8 , the communication device 800 includes an input and output interface 810 and a logic circuit 820 . The input-output interface 810 is coupled to a logic circuit 820 . In the embodiments of the present disclosure, the input and output interfaces 810 may be integrated together to implement the sending and receiving function, and may also be implemented as independent components as an input interface for receiving and an output interface for sending. For example, the input-output interface 810 shown in FIG. 8 is an example implementation of integration.
在通信装置800被实现为如图1所示的交换机120的实施例中,输入输出接口810被配置为从网络接口卡110接收报文以及根据报文的帧格式中的目的地媒体访问控制域中的可配置参数转发报文。其中可配置参数与报文的报文类型相关联,该报文类型包括具有简化的以太帧格式的第一类型报文以及具有标准以太帧格式的第二类型报文。在一些示例实施例中,输入输出接口810还被配置为将所述可配置参数与所述第一类型报文的参考帧格式中的目的地媒体访问控制域的预定参数进行比较。如果确定可配置参数与所述预定参数相匹配,则将接收的所述报文确定为第一类型报文。确定与所述报文的目标地址相关联的输出端口号并且基于所述输出端口号转发所述报文。In an embodiment where the communication device 800 is implemented as a switch 120 as shown in FIG. 1 , the input and output interface 810 is configured to receive a message from the network interface card 110 and to Configurable parameters in forwarding packets. The configurable parameters are associated with the message type of the message, and the message type includes a first type message with a simplified Ethernet frame format and a second type message with a standard Ethernet frame format. In some example embodiments, the input-output interface 810 is further configured to compare the configurable parameter with the predetermined parameter of the destination MAC field in the reference frame format of the first type packet. If it is determined that the configurable parameter matches the predetermined parameter, the received message is determined as the first type message. An output port number associated with the destination address of the message is determined and the message is forwarded based on the output port number.
在一些示例实施例中,输入输出接口810还被配置为将所述可配置参数与所述第一类型报文的参考帧格式中的目的地媒体访问控制域的预定参数进行比较。如果确定可配置参数与所述预定参数不匹配,则将接收的报文确定为第二类型报文。通过对所述报文进行入方向处理操作确定所述报文是否允许经由所述交换机被转发到所述报文的目标设备。如果确定所述报文经由所述交换机被转发到所述报文的所述目标设备,确定与所述报文的目标地址相关联的输出端口号并基于所述输出端口号转发所述报文。In some example embodiments, the input-output interface 810 is further configured to compare the configurable parameter with the predetermined parameter of the destination MAC field in the reference frame format of the first type packet. If it is determined that the configurable parameter does not match the predetermined parameter, then determine the received message as the second type of message. It is determined whether the packet is allowed to be forwarded to the target device of the packet by performing an inbound direction processing operation on the packet. If it is determined that the message is forwarded to the destination device of the message via the switch, determining an output port number associated with the destination address of the message and forwarding the message based on the output port number .
在一些示例实施例中,输入输出接口810还被配置为从所述报文的所述帧格式中获取目标地址,所述目标地址包括要接收所述报文的目标设备的地址,或与所述目标设备有关的目标网段的地址。通过基于所述目标地址进行精确匹配操作或线性表查找操作来确定所述输出端口号。In some exemplary embodiments, the input and output interface 810 is further configured to obtain a target address from the frame format of the message, and the target address includes the address of the target device to receive the message, or is related to the The address of the target network segment related to the target device. The output port number is determined by performing an exact match operation or a linear table lookup operation based on the target address.
在一些示例实施例中,目标网段的地址包括可配置的预定长度比特掩码。In some example embodiments, the address of the target network segment includes a configurable predetermined length bitmask.
在一些示例实施例中,输入输出接口810还被配置为通过三态内容寻址存储器匹配操作对所述报文进行入方向处理操作。In some exemplary embodiments, the I/O interface 810 is further configured to perform an inbound processing operation on the packet through a 3-state content-addressable memory matching operation.
在通信装置800被实现为如图1所示的NIC 110的实施例中,逻辑电路820被配置为确定报文的帧格式中的目的地媒体访问控制域中的可配置参数以及基于可配置参数生成所述报文,其中可配置参数与报文的报文类型相关联,该报文类型包括具有简化的以太帧格式的第一类型报文以及具有标准以太帧格式的第二类型报文。。输入输出接口810可以被配置为将报文发送到交换机。In an embodiment in which the communication device 800 is implemented as the NIC 110 shown in FIG. 1 , the logic circuit 820 is configured to determine the configurable parameters in the destination MAC field in the frame format of the message and based on the configurable parameter The message is generated, wherein the configurable parameter is associated with a message type of the message, and the message type includes a first type message in a simplified Ethernet frame format and a second type message in a standard Ethernet frame format. . The input and output interface 810 may be configured to send packets to the switch.
在一些示例实施例中,逻辑电路820还被配置为确定要被封装到所述报文的数据分组的类型并基于所述数据分组的类型确定可配置参数。In some example embodiments, the logic circuit 820 is further configured to determine a type of data packet to be encapsulated into the message and determine a configurable parameter based on the type of data packet.
在一些示例实施例中,逻辑电路820还被配置为获取与第一类型报文相关联的参考帧格式中的目的地媒体访问控制域的一组预定参数并且从所述一组预定参数中确定所述可配置参数。In some example embodiments, the logic circuit 820 is further configured to obtain a set of predetermined parameters of the destination MAC field in the reference frame format associated with the first type of message and determine from the set of predetermined parameters The configurable parameters.
图9出了其中可以实施本公开的某些实施例的通信装置900的框图。通信装置900能够用来实现例图1中所示的终端设备110和网络设备120。通信装置900也可以实现为芯片或芯片系统。应当理解的是,通信装置900仅用于示例性目的,而不暗示对于本公开的范围的任何限制。本公开的实施例还可以被体现在不同的设备中。还应当理解,通信装置900还可以包括其他元件或实体,为了便于描述未被示出,但不意味着本公开的实施例不具备这些元件或实体。Figure 9 shows a block diagram of a communications device 900 in which certain embodiments of the present disclosure may be implemented. The communication device 900 can be used to implement the terminal device 110 and the network device 120 shown in FIG. 1 . The communication device 900 may also be implemented as a chip or a chip system. It should be understood that the communication device 900 is used for exemplary purposes only and does not imply any limitation on the scope of the present disclosure. Embodiments of the present disclosure may also be embodied in different devices. It should also be understood that the communication device 900 may also include other elements or entities, which are not shown for ease of description, but it does not mean that the embodiments of the present disclosure do not have these elements or entities.
如图9所示,通信装置900包括处理器910,处理器910控制通信装置900的操作和功能。例如,在某些示例实施例中,处理器910可以借助于与其耦合的存储器920中所存储的指令930来执行各种操作。存储器920可以是适用于本地技术环境的任何合适的类型,并且可以利用任何合适的数据存储技术来实现,包括但不限于基于半导体的存储器件、磁存储器件和系统、光存储器件和系统。尽管图9中仅仅示出了一个存储器单元,但是在通信装置900中可以有多个物理不同的存储器单元。应当理解的是,处理器910和存储器920可以作为单独组件被分立设置,也可以集成在一起,本申请在这方面不予限制。As shown in FIG. 9 , the communication device 900 includes a processor 910 that controls the operations and functions of the communication device 900 . For example, in some example embodiments, processor 910 may perform various operations by means of instructions 930 stored in memory 920 coupled thereto. Memory 920 may be of any suitable type suitable for the local technical environment and may be implemented using any suitable data storage technology, including but not limited to semiconductor-based memory devices, magnetic memory devices and systems, optical memory devices and systems. Although only one memory unit is shown in FIG. 9 , there may be multiple physically distinct memory units in communication device 900 . It should be understood that the processor 910 and the memory 920 may be separately configured as individual components, or may be integrated together, which is not limited in this application.
处理器910可以是适用于本地技术环境的任何合适的类型,并且可以包括但不限于通用计算机、专用计算机、微控制器、数字信号控制器(Digital Signal Processor,DSP)以及基于控制器的多核控制器架构中的一个或多个。通信装置900也可以包括多个处理器,例如专用集成电路芯片,其在时间上从属于与主处理器同步的时钟。处理器910与通信单元940耦合。通信单元940可以通过无线电信号或者借助于光纤、电缆和/或其他部件来实现信息的接收和发送。 Processor 910 may be of any suitable type suitable for the local technical environment, and may include, but is not limited to, general purpose computers, special purpose computers, microcontrollers, digital signal processors (Digital Signal Processor, DSP), and controller-based multi-core control One or more of the server architecture. Communications device 900 may also include multiple processors, such as application specific integrated circuit chips, that are time slaved to a clock that is synchronized with the main processor. The processor 910 is coupled with the communication unit 940 . The communication unit 940 may realize receiving and sending of information through radio signals or by means of optical fibers, cables and/or other components.
存储器920可以包括一个或多个非易失性存储器和一个或多个易失性存储器。非易失性存储器的示例包括但不限于只读存储器(Read-Only Memory,ROM)、可擦除可编程只读存储器(Erasable Programmable Read Only Memory,EPROM)、闪存、硬盘、光盘(Compact Disc,CD)、数字视频盘(Digital Versatile Disc,DVD)或其他磁存储和/或光存储。易失性存储器的示例包括但不限于随机存取存储器(Random Access Memory,RAM)等。 Memory 920 may include one or more non-volatile memories and one or more volatile memories. Examples of non-volatile memory include, but are not limited to, read-only memory (Read-Only Memory, ROM), erasable programmable read-only memory (Erasable Programmable Read Only Memory, EPROM), flash memory, hard disk, optical disc (Compact Disc, CD), Digital Video Disk (Digital Versatile Disc, DVD) or other magnetic and/or optical storage. Examples of volatile memory include but not limited to random access memory (Random Access Memory, RAM) and the like.
可以借助于计算机程序来实现本公开的实施例,使通信装置900可以执行如参考图2至图7所讨论的任何过程。本公开实施例还可以通过硬件或通过软件和硬件的组合来实现。计算机程序包括由处理器910执行的计算机可执行指令930。计算机程序可以存储在存储器920中。处理器910可以通过将计算机程序加载到RAM中来执行任何合适的动作和处理。Embodiments of the present disclosure may be implemented by means of a computer program, enabling the communication device 900 to perform any of the processes as discussed with reference to FIGS. 2 to 7 . The embodiments of the present disclosure can also be realized by hardware or by a combination of software and hardware. The computer program comprises computer-executable instructions 930 executed by the processor 910 . Computer programs can be stored in the memory 920 . Processor 910 may perform any suitable actions and processes by loading a computer program into RAM.
在上文描述的NIC 110或交换机120通过利用机器学习算法的模块、强化学习模型等来确定调整参数的实施例中,这些模块和模型可以以计算机程序代码或指令930的方式存储在存储器920中,处理器执行存储器920中的程序代码或指令以促使通信装置900执行上述图2至图7中NIC 110或交换机120所实施的处理过程。In the embodiments described above where the NIC 110 or switch 120 determines tuning parameters by utilizing modules of machine learning algorithms, reinforcement learning models, etc., these modules and models may be stored in memory 920 in the form of computer program code or instructions 930 , the processor executes the program codes or instructions in the memory 920 to cause the communication device 900 to execute the processing procedures implemented by the NIC 110 or the switch 120 in FIG. 2 to FIG. 7 .
在一些实施例中,计算机程序可以有形地包含在计算机可读介质中,该计算机可读介质可以包括在通信装置900中(诸如在存储器920中)或者可以由通信装置900访问的其他存储设备。可以将计算机程序从计算机可读介质加载到RAM以供执行。计算机可读介质可以包括任何类型的有形非易失性存储器,例如ROM、EPROM、闪存、硬盘、CD、DVD等。In some embodiments, the computer program may be tangibly embodied on a computer readable medium, which may be included in the communication apparatus 900 (such as in the memory 920 ) or other storage device accessible by the communication apparatus 900 . A computer program can be loaded from a computer readable medium into RAM for execution. The computer readable medium may include any type of tangible nonvolatile memory such as ROM, EPROM, flash memory, hard disk, CD, DVD, and the like.
总体而言,本公开的各种示例实施例可以在硬件或专用电路、软件、逻辑,或其任何组合中实施。某些方面可以在硬件中实施,而其他方面可以在可以由控制器、微处理器或其他计算设备执行的固件或软件中实施。当本公开的示例实施例的各方面被图示或描述为框图、流程图或使用某些其他图形表示时,将理解此处描述的方框、装置、系统、技术或方法可以作为非限制性的示例在硬件、软件、固件、专用电路或逻辑、通用硬件或控制器或其他计算设备,或其某些组合中实施。In general, various example embodiments of the present disclosure may be implemented in hardware or special purpose circuits, software, logic, or any combination thereof. Certain aspects may be implemented in hardware, while other aspects may be implemented in firmware or software, which may be executed by a controller, microprocessor or other computing device. When aspects of example embodiments of the present disclosure are illustrated or described as block diagrams, flowcharts, or using some other graphical representation, it is to be understood that the blocks, devices, systems, techniques, or methods described herein may serve as non-limiting Examples of are implemented in hardware, software, firmware, special purpose circuits or logic, general purpose hardware or controllers or other computing devices, or some combination thereof.
作为示例,本公开的示例实施例可以在机器或计算机可执行指令的上下文中被描述,机器可执行指令诸如包括在目标的真实或者虚拟处理器上的器件中执行的程序模块中。一般而言,程序模块包括例程、程序、库、对象、类、组件、数据结构等,其执行特定的任务或者实现特定的抽象数据结构。在各示例实施例中,程序模块的功能可以在所描述的程序模块之间合并或者分割。用于程序模块的机器可执行指令可以在本地或者分布式设备内执行。在分布式设备中,程序模块可以位于本地和远程存储介质二者中。As an example, example embodiments of the present disclosure may be described in the context of machine or computer-executable instructions, such as program modules included in a device executed on a real or virtual processor of a target. Generally, program modules include routines, programs, libraries, objects, classes, components, data structures, etc. that perform particular tasks or implement particular abstract data structures. In various example embodiments, the functionality of the program modules may be combined or divided between the described program modules. Machine-executable instructions for program modules may be executed locally or in distributed devices. In a distributed device, program modules may be located in both local and remote storage media.
用于实现本公开的方法的计算机程序代码可以用一种或多种编程语言编写。这些计算机程序代码可以提供给通用计算机、专用计算机或其他可编程的数据处理装置的处理器,使得程序代码在被计算机或其他可编程的数据处理装置执行的时候,引起在流程图和/或框图中规定的功能/操作被实施。程序代码可以完全在计算机上、部分在计算机上、作为独立的软件包、部分在计算机上且部分在远程计算机上或完全在远程计算机或服务器上执行。Computer program codes for implementing the methods of the present disclosure may be written in one or more programming languages. These computer program codes can be provided to processors of general-purpose computers, special-purpose computers, or other programmable data processing devices, so that when the program codes are executed by the computer or other programmable data processing devices, The functions/operations specified in are implemented. The program code may execute entirely on the computer, partly on the computer, as a stand-alone software package, partly on the computer and partly on a remote computer or entirely on the remote computer or server.
在本公开的上下文中,计算机程序代码或者相关数据可以由任意适当载体承载,以使得设备、装置或者处理器能够执行上文描述的各种处理和操作。载体的示例包括信号、计算机可读介质、等等。信号的示例可以包括电、光、无线电、声音或其它形式的传播信号,诸如载波、红外信号等。In the context of the present disclosure, computer program code or related data may be carried by any suitable carrier to enable a device, apparatus or processor to perform the various processes and operations described above. Examples of carriers include signals, computer readable media, and the like. Examples of signals may include electrical, optical, radio, sound, or other forms of propagated signals, such as carrier waves, infrared signals, and the like.
在本公开的上下文中,机器可读介质或计算机可读介质可以是包含或存储用于或有关于指令执行系统、装置或设备的程序的任何有形介质。机器可读介质可以是机器可读信号介质或机器可读存储介质。机器可读介质可以包括但不限于电子的、磁的、光学的、电磁的、红外的或半导体系统、装置或设备,或其任意合适的组合。机器可读存储介质的更详细示例包括带有一根或多根导线的电气连接、便携式计算机磁盘、硬盘、随机存储存取器(RAM)、只读存储器(ROM)、可擦除可编程只读存储器(EPROM或闪存)、光存储设备、磁存储设备,或其任意合适的组合。In the context of the present disclosure, a machine-readable medium or computer-readable medium may be any tangible medium containing or storing a program for or relating to an instruction execution system, apparatus, or device. A machine-readable medium can be a machine-readable signal medium or a machine-readable storage medium. A machine-readable medium may include, but is not limited to, an electronic, magnetic, optical, electromagnetic, infrared, or semiconductor system, apparatus, or device, or any suitable combination thereof. More detailed examples of machine-readable storage media include electrical connections with one or more wires, portable computer diskettes, hard disks, random storage access memory (RAM), read-only memory (ROM), erasable programmable read-only memory (EPROM or flash), optical storage, magnetic storage, or any suitable combination thereof.
另外,尽管操作以特定顺序被描绘,但这并不应该理解为要求此类操作以示出的特定顺序或以相继顺序完成,或者执行所有图示的操作以获取期望结果。在某些情况下,多任务或并行处理会是有益的。同样地,尽管上述讨论包含了某些特定的实施细节,但这并不应解释为限制任何发明或权利要求的范围,而应解释为对可以针对特定发明的特定示例实施例的描述。本说明书中在分开的示例实施例的上下文中描述的某些特征也可以整合实施在单个示例 实施例中。反之,在单个示例实施例的上下文中描述的各种特征也可以分离地在多个示例实施例或在任意合适的子组合中实施。In addition, while operations are depicted in a particular order, this should not be understood as requiring that such operations be performed in the particular order shown, or in sequential order, or that all illustrated operations be performed, to achieve desirable results. In some cases, multitasking or parallel processing can be beneficial. Likewise, while the above discussion contains certain specific implementation details, these should not be construed as limitations on the scope of any invention or claims, but rather as a description of specific example embodiments that may be directed to particular inventions. Certain features that are described in this specification in the context of separate example embodiments can also be implemented integrally in a single example embodiment. Conversely, various features that are described in the context of a single example embodiment can also be implemented in multiple example embodiments separately or in any suitable subcombination.
尽管已经以特定于结构特征和/或方法动作的语言描述了主题,但是应当理解,所附权利要求中限定的主题并不限于上文描述的特定特征或动作。相反,上文描述的特定特征和动作是作为实现权利要求的示例形式而被公开的。Although the subject matter has been described in language specific to structural features and/or methodological acts, it is to be understood that the subject matter defined in the appended claims is not limited to the specific features or acts described above. Rather, the specific features and acts described above are disclosed as example forms of implementing the claims.

Claims (14)

  1. 一种用于转发报文的方法,包括:A method for forwarding a message, comprising:
    交换机从网络接口卡接收报文;The switch receives the message from the network interface card;
    所述交换机根据所述报文的帧格式中的目的地媒体访问控制域中的可配置参数,转发所述报文,其中所述可配置参数与所述报文的报文类型相关联,所述报文类型包括具有简化的以太帧格式的第一类型报文以及具有标准以太帧格式的第二类型报文。The switch forwards the message according to a configurable parameter in the destination media access control field in the frame format of the message, where the configurable parameter is associated with the message type of the message, and the The message types include a first type message with a simplified Ethernet frame format and a second type message with a standard Ethernet frame format.
  2. 根据权利要求1所述的方法,其中转发所述报文包括:The method according to claim 1, wherein forwarding the message comprises:
    将所述可配置参数与所述第一类型报文的参考帧格式中的目的地媒体访问控制域的预定参数进行比较;comparing said configurable parameters with predetermined parameters of a destination media access control field in a reference frame format of said first type of message;
    如果确定所述可配置参数与所述预定参数相匹配,将接收的所述报文确定为第一类型报文;If it is determined that the configurable parameter matches the predetermined parameter, determine the received message as a first type message;
    确定与所述报文的目标地址相关联的输出端口号;以及determining an output port number associated with the destination address of the message; and
    基于所述输出端口号转发所述报文。Forwarding the message based on the output port number.
  3. 根据权利要求1所述的方法,其中转发所述报文包括:The method according to claim 1, wherein forwarding the message comprises:
    将所述可配置参数与所述第一类型报文的参考帧格式中的目的地媒体访问控制域的预定参数进行比较;comparing said configurable parameters with predetermined parameters of a destination media access control field in a reference frame format of said first type of message;
    如果确定所述可配置参数与所述预定参数不匹配,将接收的所述报文确定为第二类型报文;If it is determined that the configurable parameter does not match the predetermined parameter, determining the received message as a second type message;
    通过对所述报文进行入方向处理操作确定所述报文是否允许经由所述交换机被转发到所述报文的目标设备;determining whether the packet is allowed to be forwarded to the target device of the packet via the switch by performing an inbound processing operation on the packet;
    如果确定所述报文允许经由所述交换机被转发到所述报文的所述目标设备,确定与所述报文的目标地址相关联的输出端口号;以及If it is determined that the message is allowed to be forwarded to the destination device of the message via the switch, determining an output port number associated with the destination address of the message; and
    基于所述输出端口号转发所述报文。Forwarding the message based on the output port number.
  4. 根据权利要求2或3所述的方法,其中确定所述输出端口号包括:The method according to claim 2 or 3, wherein determining the output port number comprises:
    从所述报文的所述帧格式中获取目标地址,所述目标地址包括以下中的一项:Obtaining a target address from the frame format of the message, where the target address includes one of the following:
    要接收所述报文的目标设备的地址,或the address of the target device to which the message is to be received, or
    与所述目标设备有关的目标网段的地址;以及the address of the target network segment associated with the target device; and
    通过基于所述目标地址进行精确匹配操作或线性表查找操作来确定所述输出端口号。The output port number is determined by performing an exact match operation or a linear table lookup operation based on the target address.
  5. 根据权利要求2或3所述的方法,其中所述报文的目标地址被为具有预定数目的比特的因特网互联协议地址。3. The method according to claim 2 or 3, wherein the destination address of the message is an Internet Protocol address having a predetermined number of bits.
  6. 根据权利要求4所述的方法,其中所述目标网段的地址包括可配置的预定长度比特掩码。The method according to claim 4, wherein the address of the target network segment comprises a configurable predetermined length bitmask.
  7. 根据权利要求3所述的方法,还包括:The method according to claim 3, further comprising:
    通过三态内容寻址存储器匹配操作对所述报文进行入方向处理操作。An inbound processing operation is performed on the message through a tri-state content addressable memory matching operation.
  8. 一种用于转发报文的方法,包括:A method for forwarding a message, comprising:
    网络接口卡确定报文的帧格式中的目的地媒体访问控制域中的可配置参数,其中所述可配置参数与所述报文的报文类型相关联,所述报文类型包括具有简化的以太帧格式的第一类型报文以及具有标准以太帧格式的第二类型报文;A network interface card determines a configurable parameter in a destination media access control field in a frame format of a message, wherein the configurable parameter is associated with a message type of the message, the message type including a The first type of message in the Ethernet frame format and the second type of message in the standard Ethernet frame format;
    所述网络接口卡基于所述可配置参数生成所述报文;以及the network interface card generates the message based on the configurable parameters; and
    所述网络接口卡将所述报文发送到交换机。The network interface card sends the packet to the switch.
  9. 根据权利要求8所述的方法,其中确定可配置参数包括:The method of claim 8, wherein determining a configurable parameter comprises:
    确定要被封装到所述报文的数据分组的类型;以及determining the type of data packet to be encapsulated into the message; and
    基于所述数据分组的类型确定所述可配置参数。The configurable parameter is determined based on the type of the data packet.
  10. 根据权利要求8所述的方法,其中确定所述可配置参数包括:The method of claim 8, wherein determining the configurable parameter comprises:
    获取与所述第一类型报文相关联的参考帧格式中的目的地媒体访问控制域的一组预定参数;以及Obtaining a set of predetermined parameters of the destination MAC field in the reference frame format associated with the first type of message; and
    从所述一组预定参数中确定所述可配置参数。The configurable parameter is determined from the set of predetermined parameters.
  11. 一种交换机,包括:A switch, comprising:
    处理器;以及processor; and
    与所述处理器耦合的存储器,所述存储器保存需要执行的指令,所述指令在被处理器执行时使所述交换机执行根据权利要求1-7中任一项所述的方法。A memory coupled to the processor, the memory stores instructions that need to be executed, and when the instructions are executed by the processor, the switch executes the method according to any one of claims 1-7.
  12. 一种网络接口卡,包括:A network interface card comprising:
    处理器;以及processor; and
    与所述处理器耦合的存储器,所述存储器保存需要执行的指令,所述指令在被处理器执行时使所述网络接口卡执行根据权利要求8-10中任一项所述的方法。A memory coupled to the processor, the memory stores instructions that need to be executed, and when the instructions are executed by the processor, the network interface card executes the method according to any one of claims 8-10.
  13. 一种计算机可读存储介质。计算机可读存储介质存储有指令,指令在被电子设备执行时使得电子设备执行根据权利要求1-7中任一项所述的方法或根据权利要求8-10中任一项所述的方法。A computer readable storage medium. The computer-readable storage medium stores instructions, which when executed by the electronic device cause the electronic device to perform the method according to any one of claims 1-7 or the method according to any one of claims 8-10.
  14. 一种计算机程序产品。计算机程序产品包括指令,指令在被电子设备执行时使得电子设备执行根据权利要求1-7中任一项所述的方法或根据权利要求8-10中任一项所述的方法。A computer program product. The computer program product comprises instructions which, when executed by an electronic device, cause the electronic device to perform the method according to any one of claims 1-7 or the method according to any one of claims 8-10.
PCT/CN2021/101018 2021-06-18 2021-06-18 Method for forwarding message, and switch and network interface card WO2022261961A1 (en)

Priority Applications (2)

Application Number Priority Date Filing Date Title
CN202180098887.0A CN117480744A (en) 2021-06-18 2021-06-18 Method for forwarding messages, switch and network interface card
PCT/CN2021/101018 WO2022261961A1 (en) 2021-06-18 2021-06-18 Method for forwarding message, and switch and network interface card

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/CN2021/101018 WO2022261961A1 (en) 2021-06-18 2021-06-18 Method for forwarding message, and switch and network interface card

Publications (1)

Publication Number Publication Date
WO2022261961A1 true WO2022261961A1 (en) 2022-12-22

Family

ID=84526634

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2021/101018 WO2022261961A1 (en) 2021-06-18 2021-06-18 Method for forwarding message, and switch and network interface card

Country Status (2)

Country Link
CN (1) CN117480744A (en)
WO (1) WO2022261961A1 (en)

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6775283B1 (en) * 1999-11-16 2004-08-10 Advanced Micro Devices, Inc. Passing vlan information through descriptors
US20060251067A1 (en) * 2004-10-22 2006-11-09 Cisco Technology, Inc., A Corporation Of California Fibre channel over ethernet
CN103209045A (en) * 2012-01-12 2013-07-17 华为终端有限公司 Data communication method, device and system
CN109922164A (en) * 2019-02-12 2019-06-21 Oppo广东移动通信有限公司 A kind of address conversion method, device and computer storage medium
CN112822128A (en) * 2020-12-30 2021-05-18 瑞斯康达科技发展股份有限公司 PON system message mirroring method and PON system

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6775283B1 (en) * 1999-11-16 2004-08-10 Advanced Micro Devices, Inc. Passing vlan information through descriptors
US20060251067A1 (en) * 2004-10-22 2006-11-09 Cisco Technology, Inc., A Corporation Of California Fibre channel over ethernet
CN103209045A (en) * 2012-01-12 2013-07-17 华为终端有限公司 Data communication method, device and system
CN109922164A (en) * 2019-02-12 2019-06-21 Oppo广东移动通信有限公司 A kind of address conversion method, device and computer storage medium
CN112822128A (en) * 2020-12-30 2021-05-18 瑞斯康达科技发展股份有限公司 PON system message mirroring method and PON system

Also Published As

Publication number Publication date
CN117480744A (en) 2024-01-30

Similar Documents

Publication Publication Date Title
US10341263B2 (en) System and method for routing network frames between virtual machines
US9680746B2 (en) Source routing with fabric switches in an ethernet fabric network
US9621373B2 (en) Proxy address resolution protocol on a controller device
US10237230B2 (en) Method and system for inspecting network traffic between end points of a zone
US9426060B2 (en) Software defined network (SDN) switch clusters having layer-3 distributed router functionality
US9590898B2 (en) Method and system to optimize packet exchange between the control and data plane in a software defined network
US20170033992A1 (en) METHOD FOR PROCESSING VxLAN DATA UNITS
US20210144082A1 (en) Scalable network path tracing
US10397116B1 (en) Access control based on range-matching
US10616105B1 (en) Extending virtual routing and forwarding using source identifiers
US10819640B1 (en) Congestion avoidance in multipath routed flows using virtual output queue statistics
US11588665B2 (en) VXLAN packet encapsulation and policy execution method, and VXLAN device and system
CN113326228A (en) Message forwarding method, device and equipment based on remote direct data storage
WO2020073907A1 (en) Method and apparatus for updating forwarding entry
US10581738B2 (en) Efficient inter-VLAN routing in openflow networks
CN112887229A (en) Session information synchronization method and device
US11126249B1 (en) Power reduction methods for variable sized tables
US11563698B2 (en) Packet value based packet processing
CN108737239B (en) Message forwarding method and device
US8675669B2 (en) Policy homomorphic network extension
WO2022261961A1 (en) Method for forwarding message, and switch and network interface card
WO2017008514A1 (en) Clos network load balancing method and device
US20220094769A1 (en) Message Decapsulation Method and Device, Message Encapsulation Method and Device, Electronic Device, and Storage Medium
Li et al. SDN-based switch implementation on network processors
CN112737915B (en) Intranet tunnel cross-domain gateway forwarding method, system, equipment and medium based on intelligent network card

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

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE