EP2568690A1 - Method for binding physical network ports, network card and communication system - Google Patents

Method for binding physical network ports, network card and communication system Download PDF

Info

Publication number
EP2568690A1
EP2568690A1 EP12739728A EP12739728A EP2568690A1 EP 2568690 A1 EP2568690 A1 EP 2568690A1 EP 12739728 A EP12739728 A EP 12739728A EP 12739728 A EP12739728 A EP 12739728A EP 2568690 A1 EP2568690 A1 EP 2568690A1
Authority
EP
European Patent Office
Prior art keywords
physical network
network ports
port
ports
packet
Prior art date
Legal status (The legal status 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 status listed.)
Granted
Application number
EP12739728A
Other languages
German (de)
French (fr)
Other versions
EP2568690A4 (en
EP2568690B1 (en
Inventor
Yungang ZENG
Lin Peng
Zhongjun ZHANG
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Huawei Technologies Co Ltd
Original Assignee
Huawei Technologies Co Ltd
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
Priority claimed from CN201110033471.9A external-priority patent/CN102137169B/en
Application filed by Huawei Technologies Co Ltd filed Critical Huawei Technologies Co Ltd
Publication of EP2568690A1 publication Critical patent/EP2568690A1/en
Publication of EP2568690A4 publication Critical patent/EP2568690A4/en
Application granted granted Critical
Publication of EP2568690B1 publication Critical patent/EP2568690B1/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/08Configuration management of networks or network elements
    • H04L41/0803Configuration setting
    • 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
    • H04L12/4641Virtual LANs, VLANs, e.g. virtual private networks [VPN]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/06Management of faults, events, alarms or notifications
    • H04L41/0654Management of faults, events, alarms or notifications using network fault recovery
    • H04L41/0668Management of faults, events, alarms or notifications using network fault recovery by dynamic selection of recovery network elements, e.g. replacement by the most appropriate element after failure
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L2101/00Indexing scheme associated with group H04L61/00
    • H04L2101/60Types of network addresses
    • H04L2101/677Multiple interfaces, e.g. multihomed nodes

Definitions

  • the present invention relates to the field of communications technologies, and in particular, to a method, a network card, and a communication system for binding physical network ports.
  • FIG. 1 is a schematic diagram of network port binding in the prior art, and the whole system includes two layers in terms of logical functions: an application layer and a physical layer.
  • the physical layer includes multiple physical network cards (such as a physical network card 0 and a physical network card 1 shown in FIG. 1 ), and each physical network card has some physical network ports (for example, the physical network card 0 has physical network ports 0 and 1).
  • the physical network ports here not only represent a part of interface components that are on the network card and connected to other physical components, but further include function modules (such as PHY (Physical Layer, physical layer) chips) that process data of the physical network ports.
  • the "physical network port” here may be construed as a function module located on the network card and having a data processing capability, and corresponds to a data channel.
  • Each network port in the network card is virtualized into a virtual network card (which is indicated by Eth plus a digital label here) in the application layer (such as an operating system) through the processing of a driver and relevant software, for example, the physical network port 0 is virtualized into Eth0, and a physical network port 2 is virtualized into Eth2.
  • binding the virtual network cards may be construed as “binding the physical network ports” and these two statements are not strictly distinguished here.
  • Binding multiple physical network ports facilitates uniform processing in the application layer, thereby implementing load balancing and redundancy backup.
  • the inventor finds that the prior art at least has the following defects:
  • binding is performed on the network ports only once, for example, once a load balancing mode is used for binding, a redundancy backup mode cannot be used. While in a practical application, to better meet service demands, binding usually needs to be performed twice on the network ports, for example, redundancy backup is implemented for two network port groups and load balancing is implemented for multiple network ports in each group. Therefore, the prior art fails to implement the requirement of binding twice, thereby failing to better meet the service demands.
  • the present invention provides a method, a network card, and a communication system for binding physical network ports, so as to implement the requirement of binding twice and better meet service demands.
  • the technical solutions are described as follows:
  • a method for binding physical network ports includes:
  • a network card includes:
  • a communication system includes a CPU (Central Processing Unit, central processing unit) and a network card, where the network card includes multiple physical network ports; the CPU runs an application layer program and is configured to process service data; and the network card is configured to create a virtual port, where the virtual port corresponds to a virtual network card in an application layer and is capable of being bound, in the application layer, with other created virtual ports through an application layer software; add multiple physical network ports, which need to be bound, to the created virtual port; when communication of the physical network ports in the virtual port is normal, determine the physical network ports in normal communication as available physical network ports; and when a packet needs to be received and/or transmitted, select one or more physical network ports from the available physical network ports according to a configured mode to receive and/or transmit the packet.
  • a CPU Central Processing Unit, central processing unit
  • the network card includes multiple physical network ports
  • the CPU runs an application layer program and is configured to process service data
  • the network card is configured to create a virtual port, where the virtual port corresponds to a virtual network card in an application
  • a virtual port is created, multiple physical network ports that need to be bound are added to the virtual port, and physical network ports in normal communication in the virtual port are determined as available physical network ports.
  • one or more physical network ports are selected from the available physical network ports according to a configured mode to receive and/or transmit the packet.
  • the virtual port corresponds to a virtual network card in the application layer and is capable of being bound, in the application layer, with other created virtual ports through an application layer software. In this way, multiple virtual ports are bound into one virtual network card in the application layer, thereby implementing the requirement of binding twice and better meeting the service demands.
  • FIG. 1 is a schematic diagram of network port binding in the prior art
  • FIG. 2 is a flow chart of a method for binding physical network ports according to Embodiment 1 of the present invention
  • FIG. 3 is a flow chart of a method for binding physical network ports according to Embodiment 2 of the present invention.
  • FIG. 4 is a schematic diagram of network port binding according to Embodiment 2 of the present invention.
  • FIG. 5 is a flow chart of a method for binding physical network ports according to Embodiment 3 of the present invention.
  • FIG. 6 is a flow chart of a method for binding physical network ports according to Embodiment 3 of the present invention.
  • FIG. 7 is a flow chart of a method for binding physical network ports according to Embodiment 3 of the present invention.
  • FIG. 8 is schematic diagram of a network card according to Embodiment 4 of the present invention.
  • FIG. 9 is schematic diagram of a communication system according to Embodiment 5 of the present invention.
  • an embodiment of the present invention provides a method for binding physical network ports, which is applied in a network card device and includes:
  • Step 101 Create a virtual port, where the virtual port corresponds to a virtual network card in an application layer and is capable of being bound, in the application layer, with other created virtual ports through an application layer software.
  • Step 102 Add multiple physical network ports, which need to be bound, to the created virtual port.
  • Step 103 When communication of the physical network ports in the virtual port is normal, determine the physical network ports in normal communication as available physical network ports.
  • Step 104 When a packet needs to be received and/or transmitted, select one or more physical network ports from the available physical network ports according to a configured mode to receive and/or transmit the packet.
  • a virtual port is created, multiple physical network ports that need to be bound are added to the virtual port, and physical network ports in normal communication are determined as available physical network ports.
  • one or more physical network ports are selected from the available physical network ports according to a configured mode to receive and/or transmit the packet.
  • the virtual port corresponds to a virtual network card in the application layer and is capable of being bound, in the application layer, with other created virtual ports through an application layer software. Therefore, multiple virtual ports may also be bound into one network device in the application layer, thereby implementing the requirement of binding twice and better meeting service demands.
  • an embodiment of the present invention provides a method for binding physical network ports.
  • a performing subject of this embodiment is a network card of a terminal, and the method includes:
  • Step 201 Create a virtual port when a user designates, in the terminal, multiple physical network ports that need to be bound into a virtual port.
  • a physical layer of the terminal includes multiple physical network ports, and when the user needs to bind multiple physical network ports into the virtual port in the terminal, the user designates, in the terminal, the multiple physical network ports that need to be bound.
  • the user further configures a binding mode in the terminal, and furthermore, the binding mode configured by the user is recorded in the created virtual port.
  • the binding mode may be a load balancing mode, a redundancy backup mode, or an SLB (Server Load Balancing, Server Load Balancing) mode.
  • the "virtual port” here may be regarded as an intermediate processing module between the physical network ports and an application layer.
  • the virtual port is configured to bind multiple physical network ports (that is, to perform uniform processing on data of the multiple physical network ports in a certain manner); on the other hand, each virtual port corresponds to a virtual network card in the application layer.
  • each physical port corresponds to a virtual network card in an application layer in the prior art, and the application layer processes each virtual port as a physical port. Therefore, multiple virtual ports (virtual network cards) created in the physical layer may be bound in the application layer through an existing binding method, so as to obtain a network device. It may be seen that, the virtual port has performed binding on the multiple physical network ports once, and the virtual ports are bound once again in the application layer, so that binding the physical network ports twice may be implemented, thereby better meeting service demands.
  • the virtual port when the virtual port here is implemented by software, the virtual port may be implemented by a structure (for example, C-language-based), or an object (for example, object-oriented programming languages, including Java, C++, and so on), or other similar means according to features of different programming languages, which is not limited here.
  • a structure for example, C-language-based
  • an object for example, object-oriented programming languages, including Java, C++, and so on
  • Step 202 Determine, from the multiple physical network ports that need to be bound, physical network ports that exist in the physical layer and are not bound, and add the determined physical network ports to the created virtual port.
  • the virtual port may include bound physical network ports and available physical network ports.
  • the "available physical network ports” here refer to ports in normal communication and may be used to receive and/or transmit a packet, and may be classified into “available receiving network ports” and “available transmitting network ports” for better management in implementation.
  • the network ports that need to be bound and the available physical network ports are a member variable of the structure or the object, for example, multiple relevant physical network ports may be recorded in a member variable, where a type of the member variable is an array or a linked list.
  • other software implementation methods may be used to record the bound physical network ports and available physical network ports, which are not limited in the embodiment of the present invention.
  • adding the determined physical network ports to the virtual port means adding relevant identifiers (such as network port numbers, or numbers of PHYs corresponding to the network ports) of the physical network ports to a member variable of a virtual port object.
  • a data structure that is easy to manage may be used to represent relevant network ports, for example, a linked list is used to manage the network ports, so that network ports are conveniently added or deleted.
  • the virtual port has a "list of physical network ports” and a “list of available physical network ports” (the available physical network ports may be classified into a “list of available receiving network ports” and a “list of available transmitting network ports”) in logical sense, where the two lists record the bound physical network ports and the available physical network ports respectively.
  • Step 203 Find physical network ports in normal communication from the physical network ports included in the virtual port, and determine the physical network ports in normal communication as available physical network ports.
  • traversing is started from a first physical network port in the virtual port according to the "list of physical network ports", and it is judged whether communication of the traversed physical network port is normal. If the communication is normal, it is determined that the traversed physical network port is an available physical network port, and if a physical network port not traversed exists, a next physical network port is traversed. If the communication is abnormal and a physical network port not traversed exists, a next physical network port is traversed.
  • the available physical network ports may be determined and the determined available physical network ports are added to the list of available physical network ports (or the "list of available receiving network ports" and the "list of available transmitting network ports").
  • Whether communication of network ports is normal may be judged through a link (link) status of each network port.
  • Each physical network port in a physical network card has a link status; if communication of a physical network port is normal, the link status of the physical network port is a link up (link up) status, and if communication of a physical network port is abnormal, the link status of the physical network port is a link down (link down) status.
  • multiple physical network ports in the physical layer may be bound into a virtual port (indicated by Vport plus a digital label herein), the bound virtual port is located in a virtual port layer, and each virtual port in the virtual port layer corresponds to a virtual network card in the application layer.
  • An existing binding method may be utilized to perform secondary binding of multiple virtual ports, so as to implement the requirement of binding twice and better meet service demands.
  • Step 204 When a packet needs to be received and/or transmitted, select a physical network port from the available physical network ports in the virtual port according to a configured binding mode of the virtual port, and receive and/or transmit the packet through the selected physical network port.
  • binding mode here may also be recorded in the virtual port as a member variable, and by judging a value of the variable corresponding to the "binding mode", one or more physical network ports are selected according to a certain policy to receive and/or transmit the packet.
  • each available physical network port included in the virtual port is selected, and the packet is received and/or transmitted through each selected physical network port.
  • a physical network port is designated from the available physical network ports included in the virtual port. If communication of the designated physical network port is normal, the packet is received and/or transmitted through the designated physical network port, and if communication of the designated physical network port is abnormal, a new physical network port in normal communication is designated from remaining physical network ports, and the packet is received and/or transmitted through the designated physical network port.
  • a quintuple is extracted from the packet that needs to be received and/or transmitted. Correspondence between stored quintuples of packets and physical network ports is searched according to the extracted quintuple to check whether a corresponding physical network port exists. If the corresponding physical network port exists, the packet is received and/or transmitted through the found physical network port, and if no corresponding physical network port exists, a physical network port with minimum packet traffic is selected from the available physical network ports included in the virtual port, the packet is received and/or transmitted through the selected physical network port, and the extracted quintuple and the selected physical network port are recorded in the correspondence between quintuples of packets and physical network ports.
  • the quintuple of the packet may include a source IP (Internet Protocol, internet protocol) address, a destination IP address, a source port number, a destination port number, and a protocol number of the packet.
  • a source IP Internet Protocol, internet protocol
  • physical network ports included in each virtual port in the virtual port layer may also be checked and checking operations on each virtual port may specifically be: checking at regular time whether communication of the physical network ports in the virtual port is normal, if the communication is normal, determining the checked physical network ports as available physical network ports, and if the communication is abnormal, determining the checked physical network ports as unavailable physical network ports, and updating each corresponding list according to a checking result.
  • primary binding of the physical network ports is implemented in the physical network card by creating a virtual port in the physical network card, and at the same time, each created virtual port corresponds to a virtual network card in the application layer. Therefore, binding of the virtual ports may also be implemented in the application layer, finally binding the physical network ports twice is implemented, thereby better meeting service demands.
  • a physical network port that need to be bound may be conveniently and dynamically added or deleted subsequently, thereby better meeting the service demands (for example, the number of the bound physical network ports may be increased when a high-bandwidth service needs to be performed).
  • dynamic adjustment is merely to add some members and does not conflict with a service processing process. Therefore, such dynamic adjustment does not interrupt a service and better meets the service demands.
  • balancing and redundancy processing is performed on each physical port by utilizing the virtual port, but also traffic control and ACL (Access Control List, Access Control List) control may be performed on the port, thereby implementing Qos (Quality of Service, quality of service) control based on the virtual port and making the implementation of the Qos control more flexible.
  • Qos Quality of Service, quality of service
  • a variable for counting transmitting and/or receiving tokens is added to member variables of the virtual port and at the same time, a timing processing function for placing a token into the member variable at regular time is added.
  • a traffic condition is judged subsequently according to a value of the variable for counting transmitting and/or receiving tokens, thereby flexibly implementing the traffic control on the virtual port.
  • an embodiment of the present invention provides a method for binding physical network ports.
  • a virtual port includes at least a list of physical network ports, a list of available transmitting network ports, and a list of available receiving network ports, and description is provided in several stages, where the list of available transmitting network ports and the list of available receiving network ports may also be generally referred to as a "list of available physical network ports”.
  • This stage mainly accomplishes steps such as virtual port creation and initialization.
  • this stage includes:
  • Step 301 Create a virtual port.
  • the virtual port When multiple physical network ports designated by a user need to be bound into a virtual port according to a configured binding mode, the virtual port is created.
  • the virtual port includes at least a list of physical network ports, a list of available transmitting network ports, and a list of available receiving network ports.
  • the list of physical network ports is used to record each physical network port that needs to be bound and is included in the virtual port
  • the list of available transmitting network ports is used to record each physical network port that is used for transmitting a packet and included in the virtual port
  • the list of available receiving network ports is used to record each physical network port that is used for receiving a packet and included in the virtual port.
  • Step 302 Add a PHY.
  • a physical network port may be regarded as a function module, each function module (physical network port) corresponds to a processing chip PHY, and adding a physical network port may also be construed as adding a PHY to the list of physical network ports of the virtual port.
  • Step 303 Add a binding mode.
  • a member variable that represents the binding mode is set in the virtual port, and "adding a binding mode to the virtual port” may be construed as "assigning a value, which represents the binding mode, to the variable".
  • a network card may be further determined whether a network card supports the binding mode. If a network card supports the binding mode, the binding mode is recorded in the virtual port, and if a network card does not support the binding mode the step of binding the virtual port is ended and storage space occupied by the virtual port is released.
  • the network card may support all binding modes, or only support several binding modes.
  • a network card that only supports several binding modes instead of all binding modes further maintains a list of binding modes, where the list of binding modes is used to record binding modes supported by the network card.
  • operations of determining whether the network card supports the configured binding mode may be: searching the list of binding modes maintained by the network card to check whether the configured binding mode exists. If the configured binding mode exists, it is determined that the network card supports the configured mode, and if the configured binding mode does not exist, it is determined that the network card does not support the configured binding mode.
  • Step 304 Traverse multiple PHYs in the list of physical network ports and check a link status.
  • Step 305 Judge whether the status is a link up status; if yes, perform step 306; otherwise, perform step 307.
  • Step 306 Add the corresponding PHY to the list of available transmitting network ports and the list of available receiving network ports.
  • Step 307 Judge whether the PHY is the last one; if yes, perform step 308 to end the process; if not, go on to perform step 304.
  • the virtual port is created and the PHYs (physical network ports) in normal communication are added to the list of available transmitting network ports and the list of available receiving network ports.
  • This stage checks a communication status of each network port (PHY) in the list of available network ports by traversing at regular time, so as to add the network port to or delete the network port from the list of available transmitting/receiving network ports.
  • PHY network port
  • this stage includes the following steps:
  • Step 311 Check whether set time is timeout; if yes, perform step 312; if not, keep performing step 311.
  • Step 312 Traverse PHYs in the list of available network ports and check a PHY status.
  • Step 313 Judge whether the PHY status changes; if yes, perform step 314; if not, go on to perform step 312.
  • Step 314 Judge whether the PHY status is link up; if yes, perform step 315; if not, perform step 316.
  • Step 315 Add the PHY (physical network port) to the list of available transmitting network ports and the list of available receiving network ports, and perform step 317 subsequently.
  • the PHY status changes and the current status is link up, it indicates that original communication is abnormal and current communication is normal; therefore, the PHY is added to the list of available transmitting/receiving network ports.
  • Step 316 Delete the PHY (physical network port) from the list of available transmitting network ports and the available receiving network ports, and perform step 317 subsequently.
  • the PHY status changes and the current status is not link up, it indicates that original communication is normal and current communication is abnormal; therefore, the PHY is deleted from the list of available transmitting/receiving network ports.
  • Step 317 Judge whether the PHY is the last PHY in the list of available network ports; if yes, end the process; if not, go on to perform step 312.
  • the status of each list may be updated at any time, so as to be adapted to application demands of services.
  • This stage is a data processing stage, that is, when receiving a packet, the network card completes packet data processing according to a corresponding mode.
  • this stage includes the following steps:
  • Step 321 Judge whether a packet needs to be received and/or transmitted; if yes, perform step 322; if not, keep performing step 321.
  • Step 322 Judge whether a mode is an LB (Load Balancing) mode; if yes, perform step 323; if not, perform step 324.
  • LB Load Balancing
  • Step 323 Perform a load balancing mode operation and end the subsequent process.
  • Step 324 Judge whether a mode is a redundancy mode; if yes, perform step 325; if not, perform step 326.
  • Step 325 Perform a redundancy mode operation, and end the subsequent process.
  • Step 326 Judge whether a mode is an SLB (server load balancing) mode; if yes, perform step 327; if not, end the process.
  • SLB server load balancing
  • Step 327 Perform an SLB (server load balancing) mode operation and end the subsequent process.
  • SLB server load balancing
  • the sequence of the foregoing judgments is not limited.
  • the judgment of whether the mode is the redundancy mode may be performed before the judgment of whether the mode is the LB mode.
  • the mode may be determined by judging a value of a member variable that represents the mode in the virtual port.
  • Each physical network port in the list of available receiving network ports in the virtual port is obtained and the packet is received through each of the obtained physical network ports, that is, each physical network port receives data, and in this way the load balancing is implemented.
  • a physical network port in normal communication is designated from the list of available transmitting/receiving network ports of the virtual port and the packet is received and/or transmitted (which means received or transmitted, or received and transmitted at the same time) through the designated physical network port.
  • a physical network port is designated from the list of available transmitting/receiving network ports of the virtual port, and it is judged whether communication of the designated physical network port is normal; if yes, the packet is received and/or transmitted through the designated physical network port; if not, a new physical network port is designated from remaining physical network ports in the list of available transmitting/receiving network ports and the foregoing process is repeated until a physical network port in normal communication is designated to receive and/or transmit the packet.
  • a quintuple of the packet is extracted from the packet and correspondence between stored quintuples of packets and transceiver physical network ports is searched according to the extracted quintuple of the packet.
  • the packet is received and/or transmitted by utilizing the found physical network port, so as to guarantee that the same flow is received and/or transmitted through the same port.
  • a physical network port with minimum packet traffic is selected from the lists of available receiving and/or transmitting network ports and the selected physical network port is utilized to receive and/or transmit the packet, thereby implementing the load balancing.
  • the extracted quintuple of the packet and the selected physical network port may be recorded in the correspondence between quintuples of packets and transceiver physical network ports.
  • an embodiment of the present invention provides a network card, which includes:
  • the addition module 402 is specifically configured to determine, from the multiple physical network ports that need to be bound, physical network ports that exist in a physical layer and are not bound, and add the determined physical network ports to the created virtual port.
  • the network card further includes:
  • the packet transceiver module 404 is specifically configured to: if the configured mode is a load balancing mode, receive and/or transmit the packet through the available physical network ports.
  • the packet transceiver module 404 is specifically configured to: if the configured mode is a redundancy backup mode, designate a physical network port from the available physical network ports; if communication of the designated physical network port is normal, receive and/or transmit the packet through the designated physical network port; if the communication of the designated physical network port is abnormal, designate a new physical network port in normal communication from the available physical network ports to receive and/or transmit the packet.
  • the packet transceiver module 404 includes:
  • a physical network port of the virtual port needs to be added, the physical network port that needs to be added is added to the virtual port. If a physical network port of the virtual port needs to be deleted, the physical network port that needs to be deleted is deleted from the virtual port. If a binding mode of the virtual port needs to be changed, the binding mode recorded by the virtual port is updated to the changed binding mode. In this way, the obtained virtual port may change the number and the binding mode of the physical network ports as needed.
  • a virtual port is created in the physical layer, multiple physical network ports that need to be bound are added to the created virtual port, physical network ports in normal communication in the virtual port are found, and the physical network ports in normal communication are determined as available physical network ports.
  • the packet may be received and/or transmitted through the available physical network port in the virtual port, where the virtual port corresponds to a virtual network card in the application layer and is capable of being bound, in the application layer, with other created virtual ports through an application layer software. In this way, the requirement of binding the physical network ports twice is implemented, thereby better meeting service demands.
  • each module is a logical function module and does not represent a concrete hardware module.
  • Each module in the embodiment of the present invention may be implemented on the basis of existing hardware processing units of a network card, which is not elaborated here.
  • an embodiment of the present invention provides a communication system, which includes a CPU 501 and a network card 502, where the network card 502 includes multiple physical network ports.
  • the CPU 501 is configured to run application layer programs to process service data.
  • the network card 502 is configured to create a virtual port, where the virtual port corresponds to a virtual network card in an application layer and is capable of being bound, in the application layer, with other created virtual ports through an application layer software; add multiple physical network ports, which need to be bound, to the created virtual port; when communication of the physical network ports in the virtual port is normal, determine the physical network ports in normal communication as available physical network ports; and when a packet that needs to be received and/or transmitted, select one or more physical network ports from the available physical network ports according to a configured mode to receive and/or transmit the packet.
  • a virtual port is created in the physical layer, multiple physical network ports that need to be bound are added to the created virtual port, physical network ports in normal communication in the virtual port are found, and the physical network ports in normal communication are determined as available physical network ports.
  • the packet may be received and/or transmitted through the available physical network port in the virtual port, where the virtual port corresponds to a virtual network card in the application layer and is capable of being bound, in the application layer, with other created virtual ports through an application layer software. In this way, the requirement of binding the physical network ports twice is implemented, thereby better meeting service demands.
  • a network card device may be implemented on the basis of a network card hardware device in the prior art, for example, the foregoing functions may be implemented by adding program codes corresponding to the embodiment of the present invention to an existing network card processor. Specifically, logical division of the network card device may be performed according to Embodiment 4. Alternatively, persons skilled in the art may divide (for example, create different function modules through software) function modules of the network card device in other similar manners, thereby implementing the functions of the network card.
  • All or part of the contents in the technical solution provided in the foregoing embodiments may be implemented by software programs, and the software programs are stored in readable storage media such as a computer hard disk, an optical disk, or a floppy disk.

Landscapes

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

Abstract

The present invention discloses a method, a network card, and a communication system for binding physical network ports. The method includes: creating a virtual port, where the virtual port corresponds to a virtual network card in an application layer and is capable of being bound, in the application layer, with other created virtual ports through an application layer software; adding, to the created virtual port, multiple physical network ports, which need to be bound; when communication of the physical network ports in the virtual port is normal, determining the physical network ports in normal communication as available physical network ports; and when a packet needs to be received and/or transmitted, selecting one or more physical network port from the available physical network ports according to a configured mode to receive and/or transmit the packet. Through embodiments of the present invention, binding the physical network ports twice is implemented, thereby better meeting service demands.

Description

  • This application claims priority to Chinese Patent Application No. 201110033471.9 , filed with the Chinese Patent Office on January 30, 2011 and entitled "METHOD, NETWORK CARD, AND COMMUNICATION SYSTEM FOR BINDING PHYSICAL NETWORK PORTS", which is incorporated herein by reference in its entirety.
  • FIELD OF THE INVENTION
  • The present invention relates to the field of communications technologies, and in particular, to a method, a network card, and a communication system for binding physical network ports.
  • BACKGROUND OF THE INVENTION
  • In the field of communications, in order to improve network quality as well as the reliability and bandwidth of a service, multiple physical network ports of a communication device are usually logically bound together and used as one network device.
  • Referring to FIG. 1, FIG. 1 is a schematic diagram of network port binding in the prior art, and the whole system includes two layers in terms of logical functions: an application layer and a physical layer. The physical layer includes multiple physical network cards (such as a physical network card 0 and a physical network card 1 shown in FIG. 1), and each physical network card has some physical network ports (for example, the physical network card 0 has physical network ports 0 and 1). The physical network ports here not only represent a part of interface components that are on the network card and connected to other physical components, but further include function modules (such as PHY (Physical Layer, physical layer) chips) that process data of the physical network ports. The "physical network port" here may be construed as a function module located on the network card and having a data processing capability, and corresponds to a data channel.
  • Each network port in the network card is virtualized into a virtual network card (which is indicated by Eth plus a digital label here) in the application layer (such as an operating system) through the processing of a driver and relevant software, for example, the physical network port 0 is virtualized into Eth0, and a physical network port 2 is virtualized into Eth2.
  • After the physical network ports are virtualized into virtual network cards, these virtual network cards may be bound to form a network device (the network device is not shown in the figure) through a certain binding policy. Because each virtual network card here corresponds to a physical network port, "binding the virtual network cards" may be construed as "binding the physical network ports" and these two statements are not strictly distinguished here.
  • Binding multiple physical network ports facilitates uniform processing in the application layer, thereby implementing load balancing and redundancy backup.
  • During the implementation of the present invention, the inventor finds that the prior art at least has the following defects:
  • In the prior art, in the binding of the application layer, binding is performed on the network ports only once, for example, once a load balancing mode is used for binding, a redundancy backup mode cannot be used. While in a practical application, to better meet service demands, binding usually needs to be performed twice on the network ports, for example, redundancy backup is implemented for two network port groups and load balancing is implemented for multiple network ports in each group. Therefore, the prior art fails to implement the requirement of binding twice, thereby failing to better meet the service demands.
  • SUMMARY OF THE INVENTION
  • The present invention provides a method, a network card, and a communication system for binding physical network ports, so as to implement the requirement of binding twice and better meet service demands. The technical solutions are described as follows:
  • A method for binding physical network ports includes:
    • creating a virtual port, where the virtual port corresponds to a virtual network card in an application layer and is capable of being bound, in the application layer, with other created virtual ports through an application layer software;
    • adding multiple physical network ports, which need to be bound, to the created virtual port;
    • when communication of the physical network ports in the virtual port is normal, determining the physical network ports in normal communication as available physical network ports; and
    • when a packet needs to be received and/or transmitted, selecting one or more physical network ports from the available physical network ports according to a configured mode to receive and/or transmit the packet.
  • A network card includes:
    • a creation module, configured to create a virtual port, where the virtual port corresponds to a virtual network card in an application layer and is capable of being bound, in the application layer, with other created virtual ports through an application layer software;
    • an addition module, configured to add multiple physical network ports, which need to be bound, to the created virtual port;
    • a determining module, configured to: when communication of the physical network ports in the virtual port is normal, determine the physical network ports in normal communication as available physical network ports; and
    • a packet transceiver module, configured to: when a packet needs to be received and/or transmitted, select one or more physical network ports from the available physical network ports according to a configured mode to receive and/or transmit the packet.
  • A communication system includes a CPU (Central Processing Unit, central processing unit) and a network card, where the network card includes multiple physical network ports;
    the CPU runs an application layer program and is configured to process service data; and
    the network card is configured to create a virtual port, where the virtual port corresponds to a virtual network card in an application layer and is capable of being bound, in the application layer, with other created virtual ports through an application layer software; add multiple physical network ports, which need to be bound, to the created virtual port; when communication of the physical network ports in the virtual port is normal, determine the physical network ports in normal communication as available physical network ports; and when a packet needs to be received and/or transmitted, select one or more physical network ports from the available physical network ports according to a configured mode to receive and/or transmit the packet.
  • In the present invention, a virtual port is created, multiple physical network ports that need to be bound are added to the virtual port, and physical network ports in normal communication in the virtual port are determined as available physical network ports. When a packet needs to be received and/or transmitted, one or more physical network ports are selected from the available physical network ports according to a configured mode to receive and/or transmit the packet. The virtual port corresponds to a virtual network card in the application layer and is capable of being bound, in the application layer, with other created virtual ports through an application layer software. In this way, multiple virtual ports are bound into one virtual network card in the application layer, thereby implementing the requirement of binding twice and better meeting the service demands.
  • BRIEF DESCRIPTION OF THE DRAWINGS
  • FIG. 1 is a schematic diagram of network port binding in the prior art;
  • FIG. 2 is a flow chart of a method for binding physical network ports according to Embodiment 1 of the present invention;
  • FIG. 3 is a flow chart of a method for binding physical network ports according to Embodiment 2 of the present invention;
  • FIG. 4 is a schematic diagram of network port binding according to Embodiment 2 of the present invention;
  • FIG. 5 is a flow chart of a method for binding physical network ports according to Embodiment 3 of the present invention;
  • FIG. 6 is a flow chart of a method for binding physical network ports according to Embodiment 3 of the present invention;
  • FIG. 7 is a flow chart of a method for binding physical network ports according to Embodiment 3 of the present invention;
  • FIG. 8 is schematic diagram of a network card according to Embodiment 4 of the present invention; and
  • FIG. 9 is schematic diagram of a communication system according to Embodiment 5 of the present invention.
  • DETAILED DESCRIPTION OF THE EMBODIMENTS
  • To make the objectives, technical solutions, and advantages of the present invention more comprehensible, the following describes the embodiments of the present invention in further detail with reference to the accompanying drawings.
  • Embodiment 1
  • As shown in FIG. 2, an embodiment of the present invention provides a method for binding physical network ports, which is applied in a network card device and includes:
  • Step 101: Create a virtual port, where the virtual port corresponds to a virtual network card in an application layer and is capable of being bound, in the application layer, with other created virtual ports through an application layer software.
  • Step 102: Add multiple physical network ports, which need to be bound, to the created virtual port.
  • Step 103: When communication of the physical network ports in the virtual port is normal, determine the physical network ports in normal communication as available physical network ports.
  • Step 104: When a packet needs to be received and/or transmitted, select one or more physical network ports from the available physical network ports according to a configured mode to receive and/or transmit the packet.
  • In the embodiment of the present invention, a virtual port is created, multiple physical network ports that need to be bound are added to the virtual port, and physical network ports in normal communication are determined as available physical network ports. When a packet needs to be received and/or transmitted, one or more physical network ports are selected from the available physical network ports according to a configured mode to receive and/or transmit the packet. The virtual port corresponds to a virtual network card in the application layer and is capable of being bound, in the application layer, with other created virtual ports through an application layer software. Therefore, multiple virtual ports may also be bound into one network device in the application layer, thereby implementing the requirement of binding twice and better meeting service demands.
  • Embodiment 2
  • As shown in FIG. 3, an embodiment of the present invention provides a method for binding physical network ports. A performing subject of this embodiment is a network card of a terminal, and the method includes:
  • Step 201: Create a virtual port when a user designates, in the terminal, multiple physical network ports that need to be bound into a virtual port.
  • A physical layer of the terminal includes multiple physical network ports, and when the user needs to bind multiple physical network ports into the virtual port in the terminal, the user designates, in the terminal, the multiple physical network ports that need to be bound. In addition, the user further configures a binding mode in the terminal, and furthermore, the binding mode configured by the user is recorded in the created virtual port. The binding mode may be a load balancing mode, a redundancy backup mode, or an SLB (Server Load Balancing, Server Load Balancing) mode.
  • The "virtual port" here may be regarded as an intermediate processing module between the physical network ports and an application layer. On one hand, the virtual port is configured to bind multiple physical network ports (that is, to perform uniform processing on data of the multiple physical network ports in a certain manner); on the other hand, each virtual port corresponds to a virtual network card in the application layer. Such a case is similar to that each physical port corresponds to a virtual network card in an application layer in the prior art, and the application layer processes each virtual port as a physical port. Therefore, multiple virtual ports (virtual network cards) created in the physical layer may be bound in the application layer through an existing binding method, so as to obtain a network device. It may be seen that, the virtual port has performed binding on the multiple physical network ports once, and the virtual ports are bound once again in the application layer, so that binding the physical network ports twice may be implemented, thereby better meeting service demands.
  • Specifically, when the virtual port here is implemented by software, the virtual port may be implemented by a structure (for example, C-language-based), or an object (for example, object-oriented programming languages, including Java, C++, and so on), or other similar means according to features of different programming languages, which is not limited here.
  • Step 202: Determine, from the multiple physical network ports that need to be bound, physical network ports that exist in the physical layer and are not bound, and add the determined physical network ports to the created virtual port.
  • In this embodiment, it is assumed that the virtual port may include bound physical network ports and available physical network ports. The "available physical network ports" here refer to ports in normal communication and may be used to receive and/or transmit a packet, and may be classified into "available receiving network ports" and "available transmitting network ports" for better management in implementation.
  • In specific implementation, if the virtual port is a structure or an object, the network ports that need to be bound and the available physical network ports are a member variable of the structure or the object, for example, multiple relevant physical network ports may be recorded in a member variable, where a type of the member variable is an array or a linked list. Definitely, other software implementation methods may be used to record the bound physical network ports and available physical network ports, which are not limited in the embodiment of the present invention.
  • Based on the foregoing software implementation method, adding the determined physical network ports to the virtual port means adding relevant identifiers (such as network port numbers, or numbers of PHYs corresponding to the network ports) of the physical network ports to a member variable of a virtual port object.
  • In addition, to better implement dynamic management, when the virtual port is designed, a data structure that is easy to manage may be used to represent relevant network ports, for example, a linked list is used to manage the network ports, so that network ports are conveniently added or deleted.
  • For the convenience of description, specific software implementation of the bound physical network ports and the available physical network ports is not described below; instead, it is considered that the virtual port has a "list of physical network ports" and a "list of available physical network ports" (the available physical network ports may be classified into a "list of available receiving network ports" and a "list of available transmitting network ports") in logical sense, where the two lists record the bound physical network ports and the available physical network ports respectively.
  • Step 203: Find physical network ports in normal communication from the physical network ports included in the virtual port, and determine the physical network ports in normal communication as available physical network ports.
  • Specifically, traversing is started from a first physical network port in the virtual port according to the "list of physical network ports", and it is judged whether communication of the traversed physical network port is normal. If the communication is normal, it is determined that the traversed physical network port is an available physical network port, and if a physical network port not traversed exists, a next physical network port is traversed. If the communication is abnormal and a physical network port not traversed exists, a next physical network port is traversed. Through the foregoing process, the available physical network ports may be determined and the determined available physical network ports are added to the list of available physical network ports (or the "list of available receiving network ports" and the "list of available transmitting network ports").
  • Whether communication of network ports is normal may be judged through a link (link) status of each network port. Each physical network port in a physical network card has a link status; if communication of a physical network port is normal, the link status of the physical network port is a link up (link up) status, and if communication of a physical network port is abnormal, the link status of the physical network port is a link down (link down) status.
  • As shown in FIG. 4, multiple physical network ports in the physical layer may be bound into a virtual port (indicated by Vport plus a digital label herein), the bound virtual port is located in a virtual port layer, and each virtual port in the virtual port layer corresponds to a virtual network card in the application layer. An existing binding method may be utilized to perform secondary binding of multiple virtual ports, so as to implement the requirement of binding twice and better meet service demands.
  • Step 204: When a packet needs to be received and/or transmitted, select a physical network port from the available physical network ports in the virtual port according to a configured binding mode of the virtual port, and receive and/or transmit the packet through the selected physical network port.
  • The "binding mode" here may also be recorded in the virtual port as a member variable, and by judging a value of the variable corresponding to the "binding mode", one or more physical network ports are selected according to a certain policy to receive and/or transmit the packet.
  • Specifically, when the binding mode is a load balancing mode, each available physical network port included in the virtual port is selected, and the packet is received and/or transmitted through each selected physical network port.
  • When the binding mode is a redundancy mode, a physical network port is designated from the available physical network ports included in the virtual port. If communication of the designated physical network port is normal, the packet is received and/or transmitted through the designated physical network port, and if communication of the designated physical network port is abnormal, a new physical network port in normal communication is designated from remaining physical network ports, and the packet is received and/or transmitted through the designated physical network port.
  • When the binding mode is an SLB mode, a quintuple is extracted from the packet that needs to be received and/or transmitted. Correspondence between stored quintuples of packets and physical network ports is searched according to the extracted quintuple to check whether a corresponding physical network port exists. If the corresponding physical network port exists, the packet is received and/or transmitted through the found physical network port, and if no corresponding physical network port exists, a physical network port with minimum packet traffic is selected from the available physical network ports included in the virtual port, the packet is received and/or transmitted through the selected physical network port, and the extracted quintuple and the selected physical network port are recorded in the correspondence between quintuples of packets and physical network ports.
  • The quintuple of the packet may include a source IP (Internet Protocol, internet protocol) address, a destination IP address, a source port number, a destination port number, and a protocol number of the packet.
  • Furthermore, physical network ports included in each virtual port in the virtual port layer may also be checked and checking operations on each virtual port may specifically be: checking at regular time whether communication of the physical network ports in the virtual port is normal, if the communication is normal, determining the checked physical network ports as available physical network ports, and if the communication is abnormal, determining the checked physical network ports as unavailable physical network ports, and updating each corresponding list according to a checking result.
  • In the embodiment of the present invention, primary binding of the physical network ports is implemented in the physical network card by creating a virtual port in the physical network card, and at the same time, each created virtual port corresponds to a virtual network card in the application layer. Therefore, binding of the virtual ports may also be implemented in the application layer, finally binding the physical network ports twice is implemented, thereby better meeting service demands.
  • In addition, if a data structure such as a linked list is used to manage the physical network ports, a physical network port that need to be bound may be conveniently and dynamically added or deleted subsequently, thereby better meeting the service demands (for example, the number of the bound physical network ports may be increased when a high-bandwidth service needs to be performed). In addition, such dynamic adjustment is merely to add some members and does not conflict with a service processing process. Therefore, such dynamic adjustment does not interrupt a service and better meets the service demands.
  • In addition, through the embodiment of the present invention, not only balancing and redundancy processing is performed on each physical port by utilizing the virtual port, but also traffic control and ACL (Access Control List, Access Control List) control may be performed on the port, thereby implementing Qos (Quality of Service, quality of service) control based on the virtual port and making the implementation of the Qos control more flexible. For example, a variable for counting transmitting and/or receiving tokens is added to member variables of the virtual port and at the same time, a timing processing function for placing a token into the member variable at regular time is added. A traffic condition is judged subsequently according to a value of the variable for counting transmitting and/or receiving tokens, thereby flexibly implementing the traffic control on the virtual port.
  • Embodiment 3
  • Based on the foregoing embodiments, an embodiment of the present invention provides a method for binding physical network ports. In this embodiment, it is taken as an example that a virtual port includes at least a list of physical network ports, a list of available transmitting network ports, and a list of available receiving network ports, and description is provided in several stages, where the list of available transmitting network ports and the list of available receiving network ports may also be generally referred to as a "list of available physical network ports".
  • I. Creating stage
  • This stage mainly accomplishes steps such as virtual port creation and initialization. Referring to FIG. 5, this stage includes:
  • Step 301: Create a virtual port.
  • When multiple physical network ports designated by a user need to be bound into a virtual port according to a configured binding mode, the virtual port is created. The virtual port includes at least a list of physical network ports, a list of available transmitting network ports, and a list of available receiving network ports. The list of physical network ports is used to record each physical network port that needs to be bound and is included in the virtual port, the list of available transmitting network ports is used to record each physical network port that is used for transmitting a packet and included in the virtual port, and the list of available receiving network ports is used to record each physical network port that is used for receiving a packet and included in the virtual port.
  • Step 302: Add a PHY.
  • It is described in the foregoing that a physical network port may be regarded as a function module, each function module (physical network port) corresponds to a processing chip PHY, and adding a physical network port may also be construed as adding a PHY to the list of physical network ports of the virtual port.
  • Step 303: Add a binding mode.
  • Specifically, a member variable that represents the binding mode is set in the virtual port, and "adding a binding mode to the virtual port" may be construed as "assigning a value, which represents the binding mode, to the variable".
  • Furthermore, before a configured binding mode is recorded, it may be further determined whether a network card supports the binding mode. If a network card supports the binding mode, the binding mode is recorded in the virtual port, and if a network card does not support the binding mode the step of binding the virtual port is ended and storage space occupied by the virtual port is released.
  • The network card may support all binding modes, or only support several binding modes. A network card that only supports several binding modes instead of all binding modes further maintains a list of binding modes, where the list of binding modes is used to record binding modes supported by the network card.
  • Correspondingly, operations of determining whether the network card supports the configured binding mode may be: searching the list of binding modes maintained by the network card to check whether the configured binding mode exists. If the configured binding mode exists, it is determined that the network card supports the configured mode, and if the configured binding mode does not exist, it is determined that the network card does not support the configured binding mode.
  • Step 304: Traverse multiple PHYs in the list of physical network ports and check a link status.
  • In the embodiment of the present invention, it is determined whether communication of a physical network port is normal by checking the link status of the PHY
  • Step 305: Judge whether the status is a link up status; if yes, perform step 306; otherwise, perform step 307.
  • Step 306: Add the corresponding PHY to the list of available transmitting network ports and the list of available receiving network ports.
  • Step 307: Judge whether the PHY is the last one; if yes, perform step 308 to end the process; if not, go on to perform step 304.
  • Through the foregoing steps, the virtual port is created and the PHYs (physical network ports) in normal communication are added to the list of available transmitting network ports and the list of available receiving network ports.
  • II. Maintenance stage
  • This stage checks a communication status of each network port (PHY) in the list of available network ports by traversing at regular time, so as to add the network port to or delete the network port from the list of available transmitting/receiving network ports.
  • Referring to FIG. 6, this stage includes the following steps:
  • Step 311: Check whether set time is timeout; if yes, perform step 312; if not, keep performing step 311.
  • Step 312: Traverse PHYs in the list of available network ports and check a PHY status.
  • Step 313: Judge whether the PHY status changes; if yes, perform step 314; if not, go on to perform step 312.
  • Step 314: Judge whether the PHY status is link up; if yes, perform step 315; if not, perform step 316.
  • Step 315: Add the PHY (physical network port) to the list of available transmitting network ports and the list of available receiving network ports, and perform step 317 subsequently.
  • If the PHY status changes and the current status is link up, it indicates that original communication is abnormal and current communication is normal; therefore, the PHY is added to the list of available transmitting/receiving network ports.
  • Step 316: Delete the PHY (physical network port) from the list of available transmitting network ports and the available receiving network ports, and perform step 317 subsequently.
  • If the PHY status changes and the current status is not link up, it indicates that original communication is normal and current communication is abnormal; therefore, the PHY is deleted from the list of available transmitting/receiving network ports.
  • Step 317: Judge whether the PHY is the last PHY in the list of available network ports; if yes, end the process; if not, go on to perform step 312.
  • Through regular detections, the status of each list may be updated at any time, so as to be adapted to application demands of services.
  • III. Data processing stage
  • This stage is a data processing stage, that is, when receiving a packet, the network card completes packet data processing according to a corresponding mode.
  • Referring to FIG. 7, this stage includes the following steps:
  • Step 321: Judge whether a packet needs to be received and/or transmitted; if yes, perform step 322; if not, keep performing step 321.
  • Step 322: Judge whether a mode is an LB (Load Balancing) mode; if yes, perform step 323; if not, perform step 324.
  • Step 323: Perform a load balancing mode operation and end the subsequent process.
  • Step 324: Judge whether a mode is a redundancy mode; if yes, perform step 325; if not, perform step 326.
  • Step 325: Perform a redundancy mode operation, and end the subsequent process.
  • Step 326: Judge whether a mode is an SLB (server load balancing) mode; if yes, perform step 327; if not, end the process.
  • Step 327: Perform an SLB (server load balancing) mode operation and end the subsequent process.
  • The sequence of the foregoing judgments is not limited. The judgment of whether the mode is the redundancy mode may be performed before the judgment of whether the mode is the LB mode. The mode may be determined by judging a value of a member variable that represents the mode in the virtual port.
  • Operations of the foregoing involved modes are described respectively in detail below:
  • 1. LB mode
  • Each physical network port in the list of available receiving network ports in the virtual port is obtained and the packet is received through each of the obtained physical network ports, that is, each physical network port receives data, and in this way the load balancing is implemented.
  • 2. Redundancy mode
  • A physical network port in normal communication is designated from the list of available transmitting/receiving network ports of the virtual port and the packet is received and/or transmitted (which means received or transmitted, or received and transmitted at the same time) through the designated physical network port.
  • Specifically, a physical network port is designated from the list of available transmitting/receiving network ports of the virtual port, and it is judged whether communication of the designated physical network port is normal; if yes, the packet is received and/or transmitted through the designated physical network port; if not, a new physical network port is designated from remaining physical network ports in the list of available transmitting/receiving network ports and the foregoing process is repeated until a physical network port in normal communication is designated to receive and/or transmit the packet.
  • That is, in the redundancy mode, only one network port is used first and if a problem occurs, another network port is used, thereby implementing the backup.
  • 3. SLB mode
  • A quintuple of the packet is extracted from the packet and correspondence between stored quintuples of packets and transceiver physical network ports is searched according to the extracted quintuple of the packet.
  • If a corresponding physical network port is found, the packet is received and/or transmitted by utilizing the found physical network port, so as to guarantee that the same flow is received and/or transmitted through the same port.
  • If no corresponding physical network port is found, a physical network port with minimum packet traffic is selected from the lists of available receiving and/or transmitting network ports and the selected physical network port is utilized to receive and/or transmit the packet, thereby implementing the load balancing.
  • In addition, the extracted quintuple of the packet and the selected physical network port may be recorded in the correspondence between quintuples of packets and transceiver physical network ports.
  • Through the embodiment of the present invention, primary binding of each physical network port is implemented on the network card, and at the same time, the virtual ports in the present invention are bound once again in the application layer, so that binding the physical network ports twice is finally implemented, thereby better meeting service demands.
  • Embodiment 4
  • As shown in FIG. 8, an embodiment of the present invention provides a network card, which includes:
    • a creation module 401, configured to create a virtual port, where the virtual port corresponds to a virtual network card in an application layer and is capable of being bound, in the application layer, with other created virtual ports through an application layer software;
    • an addition module 402, configured to add multiple physical network ports, which need to be bound, to the created virtual port;
    • a determining module 403, configured to: when communication of the physical network ports in the virtual port is normal, determine the physical network ports in normal communication as available physical network ports; and
    • a packet transceiver module 404, configured to: when a packet needs to be received and/or transmitted, select one or more physical network ports from the available physical network ports according to a configured mode to receive and/or transmit the packet.
  • The addition module 402 is specifically configured to determine, from the multiple physical network ports that need to be bound, physical network ports that exist in a physical layer and are not bound, and add the determined physical network ports to the created virtual port.
  • Furthermore, the network card further includes:
    • a checking module, configured to check at regular time whether communication of the physical network ports in the virtual port is normal; if the communication is normal, determine the checked physical network ports as available physical network ports; if the communication is abnormal, determine the checked physical network ports as unavailable physical network ports.
  • The packet transceiver module 404 is specifically configured to: if the configured mode is a load balancing mode, receive and/or transmit the packet through the available physical network ports.
  • The packet transceiver module 404 is specifically configured to: if the configured mode is a redundancy backup mode, designate a physical network port from the available physical network ports; if communication of the designated physical network port is normal, receive and/or transmit the packet through the designated physical network port; if the communication of the designated physical network port is abnormal, designate a new physical network port in normal communication from the available physical network ports to receive and/or transmit the packet.
  • The packet transceiver module 404 includes:
    • a search unit, configured to: if the configured mode is an SLB mode, search correspondence between stored quintuples of packets and physical network ports according to a quintuple of the packet to check whether a corresponding physical network port exists; and
    • a selection unit, configured to: if the corresponding physical network port exists, receive and/or transmit the packet through the found physical network port; if no corresponding physical network port exists, select a physical network port with minimum traffic from the available physical network ports and receive and/or transmit the packet through the selected physical network port.
  • If a physical network port of the virtual port needs to be added, the physical network port that needs to be added is added to the virtual port. If a physical network port of the virtual port needs to be deleted, the physical network port that needs to be deleted is deleted from the virtual port. If a binding mode of the virtual port needs to be changed, the binding mode recorded by the virtual port is updated to the changed binding mode. In this way, the obtained virtual port may change the number and the binding mode of the physical network ports as needed.
  • In the embodiment of the present invention, a virtual port is created in the physical layer, multiple physical network ports that need to be bound are added to the created virtual port, physical network ports in normal communication in the virtual port are found, and the physical network ports in normal communication are determined as available physical network ports. When a packet needs to be received and/or transmitted, the packet may be received and/or transmitted through the available physical network port in the virtual port, where the virtual port corresponds to a virtual network card in the application layer and is capable of being bound, in the application layer, with other created virtual ports through an application layer software. In this way, the requirement of binding the physical network ports twice is implemented, thereby better meeting service demands.
  • It should be noted that, in the embodiment of the present invention, each module is a logical function module and does not represent a concrete hardware module. Each module in the embodiment of the present invention may be implemented on the basis of existing hardware processing units of a network card, which is not elaborated here.
  • Embodiment 5
  • As shown in FIG. 9, an embodiment of the present invention provides a communication system, which includes a CPU 501 and a network card 502, where the network card 502 includes multiple physical network ports.
  • The CPU 501 is configured to run application layer programs to process service data.
  • The network card 502 is configured to create a virtual port, where the virtual port corresponds to a virtual network card in an application layer and is capable of being bound, in the application layer, with other created virtual ports through an application layer software; add multiple physical network ports, which need to be bound, to the created virtual port; when communication of the physical network ports in the virtual port is normal, determine the physical network ports in normal communication as available physical network ports; and when a packet that needs to be received and/or transmitted, select one or more physical network ports from the available physical network ports according to a configured mode to receive and/or transmit the packet.
  • In the embodiment of the present invention, a virtual port is created in the physical layer, multiple physical network ports that need to be bound are added to the created virtual port, physical network ports in normal communication in the virtual port are found, and the physical network ports in normal communication are determined as available physical network ports. When a packet needs to be received and/or transmitted, the packet may be received and/or transmitted through the available physical network port in the virtual port, where the virtual port corresponds to a virtual network card in the application layer and is capable of being bound, in the application layer, with other created virtual ports through an application layer software. In this way, the requirement of binding the physical network ports twice is implemented, thereby better meeting service demands.
  • The foregoing functions accomplished by a network card device may be implemented on the basis of a network card hardware device in the prior art, for example, the foregoing functions may be implemented by adding program codes corresponding to the embodiment of the present invention to an existing network card processor. Specifically, logical division of the network card device may be performed according to Embodiment 4. Alternatively, persons skilled in the art may divide (for example, create different function modules through software) function modules of the network card device in other similar manners, thereby implementing the functions of the network card.
  • All or part of the contents in the technical solution provided in the foregoing embodiments may be implemented by software programs, and the software programs are stored in readable storage media such as a computer hard disk, an optical disk, or a floppy disk.
  • The foregoing describes exemplary embodiments of the present invention and is not intended to limit the present invention. Any modification, equivalent replacement, or improvement made without departing the spirit and principle of the present invention shall fall within the protection scope of the present invention.

Claims (13)

  1. A method for binding physical network ports, comprising:
    creating a virtual port, wherein the virtual port corresponds to a virtual network card in an application layer and is capable of being bound, in the application layer, with other created virtual ports through an application layer software;
    adding multiple physical network ports, which need to be bound, to the created virtual port;
    when communication of the physical network ports in the virtual port is normal, determining the physical network ports in normal communication as available physical network ports; and
    when a packet needs to be received and/or transmitted, selecting one or more physical network ports from the available physical network ports according to a configured mode to receive and/or transmit the packet.
  2. The method according to claim 1, wherein the adding the multiple physical network ports, which need to be bound, to the created virtual port comprises:
    determining, from the multiple physical network ports that need to be bound, physical network ports that exist in a physical layer and are not bound, and adding the determined physical network ports to the created virtual port.
  3. The method according to claim 1, after the determining the physical network ports in normal communication as the available physical network ports, further comprising:
    checking at regular time whether communication of the physical network ports in the virtual port is normal;
    if the communication is normal, determining the physical network ports as available physical network ports; and
    if the communication is abnormal, determining the physical network ports as unavailable physical network ports.
  4. The method according to claim 1, wherein the selecting one or more physical network ports from the available physical network ports according to the configured mode to receive and/or transmit the packet comprises:
    if the configured mode is a load balancing mode, receiving and/or transmitting the packet through the available physical network ports.
  5. The method according to claim 1, wherein the selecting one or more physical network ports from the available physical network ports according to the configured mode to receive and/or transmit the packet comprises:
    if the configured mode is a redundancy backup mode, designating a physical network port from the available physical network ports; and
    if communication of the designated physical network port is normal, receiving and/or transmitting the packet through the designated physical network port; if communication of the designated physical network port is abnormal, designating a new physical network port in normal communication from the available physical network ports to receive and/or transmit the packet.
  6. The method according to claim 1, wherein the selecting one or more physical network ports from the available physical network ports according to the configured mode to receive and/or transmit the packet comprises:
    if the configured mode is a server load balancing mode, searching correspondence between stored quintuples of packets and physical network ports according to a quintuple of the packet to check whether a corresponding physical network port exists; and
    if the corresponding physical network port exists, receiving and/or transmitting the packet through the found physical port; if no corresponding physical network port exists, selecting a physical network port with minimum traffic from the available physical network ports, and receiving and/or transmitting the packet through the selected physical network port.
  7. A network card, comprising:
    a creation module, configured to create a virtual port, wherein the virtual port corresponds to a virtual network card in an application layer and is capable of being bound, in the application layer, with other created virtual ports through an application layer software;
    an addition module, configured to add, to the created virtual port, multiple physical network ports that need to be bound;
    a determining module, configured to: when communication of the physical network ports in the virtual port is normal, determine the physical network ports in normal communication as available physical network ports; and
    a packet transceiver module, configured to: when a packet needs to be received and/or transmitted, select one or more physical network ports from the available physical network ports according to a configured mode to receive and/or transmit the packet.
  8. The network card according to claim 7, wherein the addition module is specifically configured to determine, from the multiple physical network ports that need to be bound, physical network ports that exist in a physical layer and are not bound, and add the determined physical network ports to the created virtual port.
  9. The network card according to claim 7, further comprising:
    a checking module, configured to check at regular time whether communication of the physical network ports in the virtual port is normal; if the communication is normal, determine the physical network ports as available physical network ports; if the communication is abnormal, determine the physical network ports as unavailable physical network ports.
  10. The network card according to claim 7, wherein the packet transceiver module is specifically configured to: if the configured mode is a load balancing mode, receive and/or transmit the packet through the available physical network ports.
  11. The network card according to claim 7, wherein the packet transceiver module is specifically configured to: if the configured mode is a redundancy backup mode, designate a physical network port from the available physical network ports; if communication of the designated physical network port is normal, receive and/or transmit the packet through the designated physical network port; if the communication of the designated physical network port is abnormal, designate a new physical network port in normal communication from the available physical network ports to receive and/or transmit the packet.
  12. The network card according to claim 7, wherein the packet transceiver module comprises:
    a search unit, configured to: if the configured mode is a server load balancing mode, search correspondence between stored quintuples of packets and physical network ports according to a quintuple of the packet to check whether a corresponding physical network port exists; and
    a selection unit, configured to: if the corresponding physical network port exists, receive and/or transmit the packet through the found physical network port, and if no corresponding physical network port exists, select a physical network port with minimum traffic from the available physical network ports, and receive and/or transmit the packet through the selected physical network port.
  13. A communication system, comprising a central processing unit CPU and a network card, wherein the network card comprises multiple physical network ports;
    the CPU is configured to run application layer programs to process service data; and
    the network card is configured to create a virtual port, wherein the virtual port corresponds to a virtual network card in an application layer and is capable of being bound, in the application layer, with other created virtual ports through an application layer software; add, to the created virtual port, multiple physical network ports, which need to be bound; when communication of the physical network ports in the virtual port is normal, determine the physical network ports in normal communication as available physical network ports; and when a packet needs to be received and/or transmitted, select one or more physical network ports from the available physical network ports according to a configured mode to receive and/or transmit the packet.
EP12739728.9A 2011-01-30 2012-01-09 Method for binding physical network ports, network card and communication system Active EP2568690B1 (en)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CN201110033471.9A CN102137169B (en) 2011-01-30 A kind of method of binding physical internet ports, network interface card and communication system
PCT/CN2012/070129 WO2012100671A1 (en) 2011-01-30 2012-01-09 Method for binding physical network ports, network card and communication system

Publications (3)

Publication Number Publication Date
EP2568690A1 true EP2568690A1 (en) 2013-03-13
EP2568690A4 EP2568690A4 (en) 2013-06-05
EP2568690B1 EP2568690B1 (en) 2015-03-18

Family

ID=44296822

Family Applications (1)

Application Number Title Priority Date Filing Date
EP12739728.9A Active EP2568690B1 (en) 2011-01-30 2012-01-09 Method for binding physical network ports, network card and communication system

Country Status (3)

Country Link
US (1) US8902731B2 (en)
EP (1) EP2568690B1 (en)
WO (1) WO2012100671A1 (en)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE102013215035B3 (en) * 2013-07-31 2014-11-06 Siemens Aktiengesellschaft Soft redundancy protocol
CN109510722A (en) * 2018-11-16 2019-03-22 郑州云海信息技术有限公司 A kind of method and device automatically configuring distributed storage node network card binding

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9628328B2 (en) * 2013-03-15 2017-04-18 Rackspace Us, Inc. Network controller with integrated resource management capability
US9055005B2 (en) * 2013-03-15 2015-06-09 Oracle International Corporation Virtual-port network switch fabric
CN104883264A (en) * 2014-02-27 2015-09-02 中国科学院声学研究所 Method and system of virtualizing network cards on network processing platform
CN110213095A (en) * 2019-05-30 2019-09-06 苏州浪潮智能科技有限公司 The method and device of network card binding automatic configuration is realized based on Python
CN114257568A (en) * 2021-12-09 2022-03-29 深圳市广和通无线股份有限公司 Data transmission method and related equipment
CN116170391A (en) * 2023-04-23 2023-05-26 北京凝思软件股份有限公司 Method, system, medium and equipment for realizing high availability of network based on redundancy mode

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20020071386A1 (en) * 2000-12-07 2002-06-13 Gronke Edward P. Technique to provide automatic failover for channel-based communications
US20020184387A1 (en) * 2001-05-31 2002-12-05 The Furukawa Electric Co., Ltd. Method for connecting between networks, virtual router, and system for connecting between networks by using this virtual router
US20050094633A1 (en) * 2003-10-31 2005-05-05 Surya Varanasi Load balancing in core-edge configurations
EP1297678B1 (en) * 2000-06-30 2005-08-24 Intel Corporation Resilient network switching
US20060282591A1 (en) * 2005-06-08 2006-12-14 Ramamurthy Krithivas Port binding scheme to create virtual host bus adapter in a virtualized multi-operating system platform environment

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1278528C (en) * 2002-12-16 2006-10-04 联想网御科技(北京)有限公司 Network safety device multi work mode adapting method
US8776050B2 (en) * 2003-08-20 2014-07-08 Oracle International Corporation Distributed virtual machine monitor for managing multiple virtual resources across multiple physical nodes
CN1324856C (en) * 2004-01-05 2007-07-04 联想(北京)有限公司 Data transmission method of network equipment based on multinetwork card and device
JP4862743B2 (en) 2007-05-17 2012-01-25 日本電気株式会社 Node, communication method and node program
CN101640620B (en) * 2009-09-01 2012-01-04 杭州华三通信技术有限公司 Method and device for health detection for equalized equipment

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP1297678B1 (en) * 2000-06-30 2005-08-24 Intel Corporation Resilient network switching
US20020071386A1 (en) * 2000-12-07 2002-06-13 Gronke Edward P. Technique to provide automatic failover for channel-based communications
US20020184387A1 (en) * 2001-05-31 2002-12-05 The Furukawa Electric Co., Ltd. Method for connecting between networks, virtual router, and system for connecting between networks by using this virtual router
US20050094633A1 (en) * 2003-10-31 2005-05-05 Surya Varanasi Load balancing in core-edge configurations
US20060282591A1 (en) * 2005-06-08 2006-12-14 Ramamurthy Krithivas Port binding scheme to create virtual host bus adapter in a virtualized multi-operating system platform environment

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
See also references of WO2012100671A1 *

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE102013215035B3 (en) * 2013-07-31 2014-11-06 Siemens Aktiengesellschaft Soft redundancy protocol
CN109510722A (en) * 2018-11-16 2019-03-22 郑州云海信息技术有限公司 A kind of method and device automatically configuring distributed storage node network card binding

Also Published As

Publication number Publication date
EP2568690A4 (en) 2013-06-05
US8902731B2 (en) 2014-12-02
CN102137169A (en) 2011-07-27
EP2568690B1 (en) 2015-03-18
US20130100798A1 (en) 2013-04-25
WO2012100671A1 (en) 2012-08-02

Similar Documents

Publication Publication Date Title
US8902731B2 (en) Method, network card, and communication system for binding physical network ports
US9264375B2 (en) Software-defined networking interface between multiple platform managers
EP3471352B1 (en) Asymmetric connection with external networks
EP3471366A1 (en) Container deployment method, communication method between services and related devices
CN108322467B (en) OVS-based virtual firewall configuration method, electronic equipment and storage medium
US8059532B2 (en) Data and control plane architecture including server-side triggered flow policy mechanism
US10079894B2 (en) Method and apparatus for dynamic destination address control in a computer network
US9059965B2 (en) Method and system for enforcing security policies on network traffic
US9571569B2 (en) Method and apparatus for determining virtual machine migration
US8625448B2 (en) Method and system for validating network traffic classification in a blade server
CN108471383B (en) Message forwarding method, device and system
JP2020515987A (en) Intelligent thread management across isolated network stacks
EP3029897B1 (en) Network packet transmission method and device
US9910687B2 (en) Data flow affinity for heterogenous virtual machines
US8732817B2 (en) Switching hub, a system, a method of the switching hub and a program thereof
GB2493597A (en) Multiple Independent Levels of Security (MILS) host with plura stack offload engines
CN113994321A (en) Mapping NVME packets on a fabric using virtual output queues
CN113553137B (en) DPDK-based access capability network element high-speed data processing method under NFV architecture
US7206823B2 (en) Computer system having a plurality of storage networks and method for setting information
CN112997457A (en) Control unit architecture for a vehicle
KR102554413B1 (en) Node device, method for processing packet of the node device, and network system which comprises node device and control device for managing control information associated with the packet-processing
CN117579547A (en) Message routing acceleration method, device, main equipment and medium

Legal Events

Date Code Title Description
PUAI Public reference made under article 153(3) epc to a published international application that has entered the european phase

Free format text: ORIGINAL CODE: 0009012

17P Request for examination filed

Effective date: 20121206

AK Designated contracting states

Kind code of ref document: A1

Designated state(s): AL AT BE BG CH CY CZ DE DK EE ES FI FR GB GR HR HU IE IS IT LI LT LU LV MC MK MT NL NO PL PT RO RS SE SI SK SM TR

A4 Supplementary search report drawn up and despatched

Effective date: 20130506

RIC1 Information provided on ipc code assigned before grant

Ipc: H04L 29/10 20060101AFI20130426BHEP

Ipc: H04L 12/46 20060101ALN20130426BHEP

17Q First examination report despatched

Effective date: 20140217

DAX Request for extension of the european patent (deleted)
GRAP Despatch of communication of intention to grant a patent

Free format text: ORIGINAL CODE: EPIDOSNIGR1

RIC1 Information provided on ipc code assigned before grant

Ipc: H04L 12/24 20060101ALI20140729BHEP

Ipc: H04L 29/12 20060101ALN20140729BHEP

Ipc: H04L 12/46 20060101ALN20140729BHEP

Ipc: H04L 29/10 20060101AFI20140729BHEP

INTG Intention to grant announced

Effective date: 20140819

GRAS Grant fee paid

Free format text: ORIGINAL CODE: EPIDOSNIGR3

GRAP Despatch of communication of intention to grant a patent

Free format text: ORIGINAL CODE: EPIDOSNIGR1

RIC1 Information provided on ipc code assigned before grant

Ipc: H04L 12/46 20060101ALN20150107BHEP

Ipc: H04L 12/24 20060101ALI20150107BHEP

Ipc: H04L 29/10 20060101AFI20150107BHEP

Ipc: H04L 29/12 20060101ALN20150107BHEP

INTG Intention to grant announced

Effective date: 20150120

GRAA (expected) grant

Free format text: ORIGINAL CODE: 0009210

AK Designated contracting states

Kind code of ref document: B1

Designated state(s): AL AT BE BG CH CY CZ DE DK EE ES FI FR GB GR HR HU IE IS IT LI LT LU LV MC MK MT NL NO PL PT RO RS SE SI SK SM TR

REG Reference to a national code

Ref country code: GB

Ref legal event code: FG4D

REG Reference to a national code

Ref country code: CH

Ref legal event code: EP

REG Reference to a national code

Ref country code: IE

Ref legal event code: FG4D

REG Reference to a national code

Ref country code: AT

Ref legal event code: REF

Ref document number: 717177

Country of ref document: AT

Kind code of ref document: T

Effective date: 20150415

REG Reference to a national code

Ref country code: DE

Ref legal event code: R096

Ref document number: 602012006047

Country of ref document: DE

Effective date: 20150430

REG Reference to a national code

Ref country code: NL

Ref legal event code: VDEP

Effective date: 20150318

REG Reference to a national code

Ref country code: NL

Ref legal event code: VDEP

Effective date: 20150318

PG25 Lapsed in a contracting state [announced via postgrant information from national office to epo]

Ref country code: LT

Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT

Effective date: 20150318

Ref country code: SE

Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT

Effective date: 20150318

Ref country code: HR

Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT

Effective date: 20150318

Ref country code: NO

Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT

Effective date: 20150618

Ref country code: FI

Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT

Effective date: 20150318

REG Reference to a national code

Ref country code: AT

Ref legal event code: MK05

Ref document number: 717177

Country of ref document: AT

Kind code of ref document: T

Effective date: 20150318

REG Reference to a national code

Ref country code: LT

Ref legal event code: MG4D

PG25 Lapsed in a contracting state [announced via postgrant information from national office to epo]

Ref country code: RS

Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT

Effective date: 20150318

Ref country code: GR

Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT

Effective date: 20150619

Ref country code: LV

Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT

Effective date: 20150318

PG25 Lapsed in a contracting state [announced via postgrant information from national office to epo]

Ref country code: NL

Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT

Effective date: 20150318

PG25 Lapsed in a contracting state [announced via postgrant information from national office to epo]

Ref country code: EE

Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT

Effective date: 20150318

Ref country code: SK

Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT

Effective date: 20150318

Ref country code: ES

Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT

Effective date: 20150318

Ref country code: CZ

Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT

Effective date: 20150318

Ref country code: PT

Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT

Effective date: 20150720

Ref country code: RO

Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT

Effective date: 20150318

PG25 Lapsed in a contracting state [announced via postgrant information from national office to epo]

Ref country code: AT

Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT

Effective date: 20150318

Ref country code: PL

Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT

Effective date: 20150318

Ref country code: IS

Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT

Effective date: 20150718

REG Reference to a national code

Ref country code: FR

Ref legal event code: PLFP

Year of fee payment: 5

REG Reference to a national code

Ref country code: DE

Ref legal event code: R097

Ref document number: 602012006047

Country of ref document: DE

PG25 Lapsed in a contracting state [announced via postgrant information from national office to epo]

Ref country code: IT

Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT

Effective date: 20150318

PLBE No opposition filed within time limit

Free format text: ORIGINAL CODE: 0009261

STAA Information on the status of an ep patent application or granted ep patent

Free format text: STATUS: NO OPPOSITION FILED WITHIN TIME LIMIT

PG25 Lapsed in a contracting state [announced via postgrant information from national office to epo]

Ref country code: DK

Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT

Effective date: 20150318

26N No opposition filed

Effective date: 20151221

PG25 Lapsed in a contracting state [announced via postgrant information from national office to epo]

Ref country code: SI

Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT

Effective date: 20150318

PG25 Lapsed in a contracting state [announced via postgrant information from national office to epo]

Ref country code: BE

Free format text: LAPSE BECAUSE OF NON-PAYMENT OF DUE FEES

Effective date: 20160131

PG25 Lapsed in a contracting state [announced via postgrant information from national office to epo]

Ref country code: BE

Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT

Effective date: 20150318

Ref country code: LU

Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT

Effective date: 20160109

REG Reference to a national code

Ref country code: CH

Ref legal event code: PL

PG25 Lapsed in a contracting state [announced via postgrant information from national office to epo]

Ref country code: MC

Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT

Effective date: 20150318

PG25 Lapsed in a contracting state [announced via postgrant information from national office to epo]

Ref country code: LI

Free format text: LAPSE BECAUSE OF NON-PAYMENT OF DUE FEES

Effective date: 20160131

Ref country code: CH

Free format text: LAPSE BECAUSE OF NON-PAYMENT OF DUE FEES

Effective date: 20160131

REG Reference to a national code

Ref country code: IE

Ref legal event code: MM4A

REG Reference to a national code

Ref country code: FR

Ref legal event code: PLFP

Year of fee payment: 6

PG25 Lapsed in a contracting state [announced via postgrant information from national office to epo]

Ref country code: IE

Free format text: LAPSE BECAUSE OF NON-PAYMENT OF DUE FEES

Effective date: 20160109

PG25 Lapsed in a contracting state [announced via postgrant information from national office to epo]

Ref country code: MT

Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT

Effective date: 20150318

REG Reference to a national code

Ref country code: FR

Ref legal event code: PLFP

Year of fee payment: 7

PG25 Lapsed in a contracting state [announced via postgrant information from national office to epo]

Ref country code: HU

Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT; INVALID AB INITIO

Effective date: 20120109

Ref country code: CY

Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT

Effective date: 20150318

Ref country code: SM

Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT

Effective date: 20150318

PG25 Lapsed in a contracting state [announced via postgrant information from national office to epo]

Ref country code: MK

Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT

Effective date: 20150318

Ref country code: TR

Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT

Effective date: 20150318

Ref country code: MT

Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT

Effective date: 20160131

PG25 Lapsed in a contracting state [announced via postgrant information from national office to epo]

Ref country code: BG

Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT

Effective date: 20150318

PG25 Lapsed in a contracting state [announced via postgrant information from national office to epo]

Ref country code: AL

Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT

Effective date: 20150318

REG Reference to a national code

Ref country code: DE

Ref legal event code: R079

Ref document number: 602012006047

Country of ref document: DE

Free format text: PREVIOUS MAIN CLASS: H04L0029100000

Ipc: H04L0069320000

PGFP Annual fee paid to national office [announced via postgrant information from national office to epo]

Ref country code: GB

Payment date: 20231130

Year of fee payment: 13

PGFP Annual fee paid to national office [announced via postgrant information from national office to epo]

Ref country code: FR

Payment date: 20231212

Year of fee payment: 13

PGFP Annual fee paid to national office [announced via postgrant information from national office to epo]

Ref country code: DE

Payment date: 20231205

Year of fee payment: 13