CN112217883B - Multi-channel construction method, device and system based on NFS protocol - Google Patents

Multi-channel construction method, device and system based on NFS protocol Download PDF

Info

Publication number
CN112217883B
CN112217883B CN202011026522.0A CN202011026522A CN112217883B CN 112217883 B CN112217883 B CN 112217883B CN 202011026522 A CN202011026522 A CN 202011026522A CN 112217883 B CN112217883 B CN 112217883B
Authority
CN
China
Prior art keywords
channel
client
server
target
network port
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.)
Active
Application number
CN202011026522.0A
Other languages
Chinese (zh)
Other versions
CN112217883A (en
Inventor
仇锋利
李养兆
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.)
Suzhou Inspur Intelligent Technology Co Ltd
Original Assignee
Suzhou Inspur Intelligent Technology 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
Application filed by Suzhou Inspur Intelligent Technology Co Ltd filed Critical Suzhou Inspur Intelligent Technology Co Ltd
Priority to CN202011026522.0A priority Critical patent/CN112217883B/en
Publication of CN112217883A publication Critical patent/CN112217883A/en
Application granted granted Critical
Publication of CN112217883B publication Critical patent/CN112217883B/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
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/1097Protocols in which an application is distributed across nodes in the network for distributed storage of data in networks, e.g. transport arrangements for network file system [NFS], storage area networks [SAN] or network attached storage [NAS]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/1001Protocols in which an application is distributed across nodes in the network for accessing one among a plurality of replicated servers
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/1001Protocols in which an application is distributed across nodes in the network for accessing one among a plurality of replicated servers
    • H04L67/1004Server selection for load balancing
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/1001Protocols in which an application is distributed across nodes in the network for accessing one among a plurality of replicated servers
    • H04L67/1004Server selection for load balancing
    • H04L67/1008Server selection for load balancing based on parameters of servers, e.g. available memory or workload
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/14Session management
    • H04L67/141Setup of application sessions

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer Hardware Design (AREA)
  • General Engineering & Computer Science (AREA)
  • Computer And Data Communications (AREA)

Abstract

The embodiment of the invention discloses a multi-channel construction method, a device and a system based on NFS protocol.A client mounts a shared directory exported by a server to the local to establish a first channel with the server; and transmitting the self internet access attribute information to the server by using the first channel. And the server determines channel establishment information according to the network port attribute information transmitted by the client, the network port attribute information of the server and the current load of the server. And the server binds a corresponding transceiving thread for each channel in the channel establishment information and feeds the channel establishment information back to the client, so that the client establishes a channel with the server according to the target network port and the number of the channels corresponding to the target network port contained in the channel establishment information. The server side determines a target network port capable of establishing the channel and the number of the channels corresponding to the target network port depending on the processing capacity of the server side and the network port attribute of the client side, and binds a receiving and sending thread for each channel, so that the performance and the competitiveness of a storage product are improved.

Description

Multi-channel construction method, device and system based on NFS protocol
Technical Field
The invention relates to the technical field of storage equipment, in particular to a multichannel construction method, a multichannel construction device and a multichannel construction system based on an NFS protocol.
Background
Generally, in the implementation of a Network File System (NFS) protocol, if there is only one physical link between a client and a server, that is, the client and the server each have only one Network port, the client can be connected to the server only through one channel. Even if the network ports of the client and the server support the multi-queue characteristic, the multi-queue characteristic cannot be utilized, and the read-write performance is improved.
Under the condition of small read-write granularity, the performance of a single channel is far lower than the aggregation performance of a plurality of channels due to the flow Control and congestion Control of a Transmission Control Protocol (TCP). At present, a channel construction mode based on an NFS protocol cannot fully utilize the characteristics of multiple network ports of an NFS client and a NFS server, so that the processing performance of equipment cannot meet the actual requirement.
It can be seen that how to improve the performance and competitiveness of stored products is a problem that needs to be solved by those skilled in the art.
Disclosure of Invention
The embodiment of the invention aims to provide a method, a device and a system for constructing a multichannel based on an NFS protocol, which can improve the performance and the competitiveness of a storage product.
In order to solve the above technical problem, an embodiment of the present invention provides a multichannel construction method based on an NFS protocol, which is applicable to a server, and the method includes:
receiving internet access attribute information transmitted by a client through a first channel; the network port attribute information comprises the number of network ports and network port information supporting multi-queue characteristics;
determining channel establishment information according to the network port attribute information transmitted by the client, the network port attribute information of the client and the current load of the client; the channel establishing information comprises a target internet access and the number of channels corresponding to the target internet access;
and binding a corresponding transceiving thread for each channel in the channel establishing information, and feeding back the channel establishing information to the client, so that the client establishes a channel with the server according to the target internet access and the number of the channels corresponding to the target internet access included in the channel establishing information.
Optionally, the determining, according to the portal attribute information transmitted by the client, the portal attribute information of the client and the current load amount of the client, channel establishment information includes:
determining the number of channels which can be established according to the self internet access attribute information and the self current load capacity;
selecting the network port supporting the multi-queue characteristic from the network port attribute information transmitted by the client as a first target network port;
judging whether the number of channels with multi-queue characteristics of the first target internet access is larger than or equal to the number of channels which can be established;
when the number of channels with the multi-queue characteristic of the first target network port is greater than or equal to the number of channels which can be established, taking the first target network port as a target network port of channel establishment information, and taking the number of channels which can be established as the number of channels of the first target network port;
when the number of the channels with the multi-queue characteristic of the first target network port is smaller than the number of the channels which can be established, taking the number of the channels with the multi-queue characteristic of the first target network port as the number of the channels of the first target network port, and calculating the difference value between the number of the channels which can be established and the number of the channels with the multi-queue characteristic of the first target network port;
selecting a second target internet access corresponding to the difference value from the internet access attribute information of the client; each second target network port corresponds to one channel;
and taking the first target internet access and the second target internet access as target internet accesses of the channel establishment information.
Optionally, after the feeding back the channel establishment information to the client, the method further includes:
counting the data transmission quantity of each channel in the period time;
and when a target channel with the data transmission quantity smaller than a preset threshold value exists, transmitting an instruction of canceling the target channel to the client so as to facilitate the client to cancel the target channel established with the server.
Optionally, after the feeding back the channel establishment information to the client, the method further includes:
when a channel establishment request transmitted by a new client is received, judging whether the establishment of a new channel is supported;
if yes, feeding back a channel establishment instruction to the new client;
if not, selecting a target channel with the data transmission quantity smaller than a preset threshold value in a period time from the established channels, and transmitting a command of canceling the target channel to the client so as to facilitate the client to cancel the target channel established with the server;
and when response information of the completion of the cancellation of the target channel transmitted by the client is received, feeding back a channel establishment instruction to the new client.
Optionally, after binding a corresponding transceiving thread for each channel in the channel establishment information and feeding back the channel establishment information to the client, the method further includes:
and after receiving a response message of completing the channel establishment fed back by the client, recording the client and the channel establishment information corresponding to the client to a preset storage space.
The embodiment of the invention also provides a multichannel construction device based on the NFS protocol, which is suitable for a server side and comprises a receiving unit, a determining unit, a binding unit and a feedback unit;
the receiving unit is used for receiving the internet access attribute information transmitted by the client through the first channel; the network port attribute information comprises the number of network ports and network port information supporting multi-queue characteristics;
the determining unit is used for determining channel establishment information according to the network port attribute information transmitted by the client, the network port attribute information of the determining unit and the current load of the determining unit; the channel establishing information comprises a target internet access and the number of channels corresponding to the target internet access;
the binding unit is used for binding a corresponding transceiving thread for each channel in the channel establishment information;
the feedback unit is configured to feed back the channel establishment information to the client, so that the client establishes a channel with the server according to a target internet access and the number of channels corresponding to the target internet access included in the channel establishment information.
Optionally, the determining unit includes a first determining subunit, a first selecting subunit, a judging subunit, a first serving subunit, a calculating subunit, a second selecting subunit, and a second serving subunit;
the first determining subunit is configured to determine, according to the self portal attribute information and the self current load amount, the number of channels that can be established;
the first selecting subunit is configured to select, from the portal attribute information transmitted by the client, a portal supporting a multi-queue feature as a first target portal;
the judging subunit is configured to judge whether the number of channels with a multi-queue characteristic of the first target internet access is greater than or equal to the number of channels that can be established;
the first serving subunit is configured to, when the number of channels of the multi-queue characteristic of the first target portal is greater than or equal to the number of channels that can be established, use the first target portal as a target portal for channel establishment information, and use the number of channels that can be established as the number of channels of the first target portal;
the calculating subunit is configured to, when the number of channels of the multi-queue characteristic of the first target portal is smaller than the number of channels that can be established, take the number of channels of the multi-queue characteristic of the first target portal as the number of channels of the first target portal, and calculate a difference between the number of channels that can be established and the number of channels of the multi-queue characteristic of the first target portal;
the second selecting subunit is configured to select a second target internet access corresponding to the difference from the internet access attribute information of the client; each second target network port corresponds to one channel;
the second as a subunit, configured to use the first target portal and the second target portal as target portals of the channel establishment information.
Optionally, the system further comprises a statistical unit and a transmission unit;
the statistical unit is used for counting the data transmission quantity of each channel in the period time;
the transmission unit is configured to transmit, to the client, an instruction to cancel a target channel when there is a target channel whose data transmission amount is smaller than a preset threshold, so that the client cancels the target channel established with the server.
Optionally, the system further comprises a judging unit and a selecting unit;
the judging unit is used for judging whether the establishment of a new channel is supported or not when a channel establishment request transmitted by a new client is received; if yes, triggering the feedback unit to feed back a channel establishment instruction to the new client; if not, triggering the selection unit;
the selecting unit is configured to select a target channel with a data transmission amount smaller than a preset threshold in a period time from the established channels, and transmit an instruction for revoking the target channel to the client, so that the client revokes the target channel established with the server;
and the feedback unit is further configured to feed back a channel establishment instruction to the new client when receiving response information that the cancellation of the target channel is completed, where the response information is transmitted by the client.
Optionally, a recording unit is further included;
and the recording unit is used for recording the client and the corresponding channel establishment information thereof to a preset storage space after receiving the response message of the completion of the channel establishment fed back by the client.
The embodiment of the invention also provides a multichannel construction method based on the NFS protocol, which is suitable for the client and comprises the following steps:
mounting a shared directory exported by a server to the local to establish a first channel with the server;
transmitting the self internet access attribute information to the server by using the first channel; the network port attribute information comprises the number of network ports and network port information supporting multi-queue characteristics;
receiving channel establishment information fed back by the server; the channel establishing information is determined and obtained by the server according to the network port attribute information transmitted by the client, the network port attribute information of the server and the current load of the server;
establishing a channel with the server side according to the target internet access and the number of the channels corresponding to the target internet access included in the channel establishing information; and each target network port is provided with a corresponding transceiving thread.
Optionally, after the establishing of the channel with the server according to the target internet access and the number of channels corresponding to the target internet access included in the channel establishment information, the method further includes:
when receiving a command for revoking a target channel transmitted by the server, revoking the target channel established with the server; and the target channel is a channel of which the data transmission quantity in the period time is less than a preset threshold value.
The embodiment of the invention also provides a multichannel construction device based on the NFS protocol, which is suitable for a client side and comprises a mounting unit, a transmission unit, a receiving unit and a construction unit;
the mounting unit is used for mounting the shared directory exported by the server to the local so as to establish a first channel with the server;
the transmission unit is used for transmitting the self internet access attribute information to the server by using the first channel; the network port attribute information comprises the number of network ports and network port information supporting multi-queue characteristics;
the receiving unit is used for receiving the channel establishment information fed back by the server; the channel establishment information is determined and obtained by the server according to the internet access attribute information transmitted by the client, the internet access attribute information of the server and the current load of the server;
the establishing unit is used for establishing a channel with the server according to the target internet access and the number of the channels corresponding to the target internet access included in the channel establishing information; and each target network port is provided with a corresponding transceiving thread.
Optionally, a revocation unit is further included;
the canceling unit is configured to cancel the target channel established with the server when receiving an instruction for canceling the target channel transmitted by the server; and the target channel is a channel of which the data transmission quantity in the period time is less than a preset threshold value.
The embodiment of the invention also provides a multichannel construction system based on the NFS protocol, which comprises a client and a server;
the client is used for mounting the shared directory exported by the server to the local so as to establish a first channel with the server; transmitting the self internet access attribute information to the server by using the first channel; the network port attribute information comprises the number of network ports and network port information supporting multi-queue characteristics; receiving channel establishment information fed back by the server; establishing a channel with the server side according to the target internet access and the number of the channels corresponding to the target internet access included in the channel establishing information;
the server is used for receiving the internet access attribute information transmitted by the client through the first channel; determining channel establishment information according to the network port attribute information transmitted by the client, the network port attribute information of the client and the current load of the client; and binding a corresponding transceiving thread for each channel in the channel establishment information, and feeding back the channel establishment information to the client.
According to the technical scheme, the client mounts the shared directory exported by the server to the local to establish a first channel with the server; transmitting self internet access attribute information to a server by using a first channel; the network port attribute information comprises the number of network ports and network port information supporting multi-queue characteristics. In order to realize load balance of multi-client services, the server can determine channel establishment information according to the network port attribute information transmitted by the client, the network port attribute information of the server and the current load of the server; the channel establishing information includes the target network port and the number of the channels corresponding to the target network port. In order to ensure the availability of the channels, the server binds corresponding transceiving threads for each channel in the channel establishment information and feeds the channel establishment information back to the client, so that the client establishes the channel with the server according to the target internet access and the number of the channels corresponding to the target internet access included in the channel establishment information. In the technical scheme, the server determines the target network ports capable of establishing the channels and the number of the channels corresponding to the target network ports by depending on the processing capacity of the server and the network port attribute of the client, and binds one transceiving thread for each channel, so that the server can exert the service performance of the server to the maximum extent, and the performance and the competitiveness of the storage product are improved.
Drawings
In order to illustrate the embodiments of the present invention more clearly, the drawings that are needed in the embodiments will be briefly described below, and it is obvious that the drawings in the following description are only some embodiments of the present invention, and that other drawings can be obtained by those skilled in the art without inventive effort.
Fig. 1 is a signaling diagram of a multi-channel construction method based on an NFS protocol according to an embodiment of the present invention;
fig. 2 is a flowchart of a method for determining channel establishment information according to portal attribute information of a client, portal attribute information of a server, and a current load of the server according to an embodiment of the present invention;
fig. 3 is a schematic structural diagram of a multi-channel construction apparatus based on an NFS protocol and applicable to a server according to an embodiment of the present invention;
fig. 4 is a schematic structural diagram of a multi-channel building apparatus based on an NFS protocol and applicable to a client according to an embodiment of the present invention;
fig. 5 is a schematic structural diagram of a multichannel building system based on an NFS protocol according to an embodiment of the present invention.
Detailed Description
The technical solutions in the embodiments of the present invention will be clearly and completely described below with reference to the drawings in the embodiments of the present invention, and it is obvious that the described embodiments are only a part of the embodiments of the present invention, and not all of the embodiments. All other embodiments obtained by a person of ordinary skill in the art based on the embodiments of the present invention without any creative work belong to the protection scope of the present invention.
In order that those skilled in the art will better understand the disclosure, the invention will be described in further detail with reference to the accompanying drawings and specific embodiments.
Next, a multichannel construction method based on the NFS protocol provided by the embodiment of the present invention is described in detail. Fig. 1 is a signaling diagram of a multi-channel construction method based on an NFS protocol according to an embodiment of the present invention, where the method includes:
s101: the client mounts the shared directory exported by the server to the local to establish a first channel with the server.
The client can realize the connection with the server through mounting the shared directory, thereby establishing a channel.
S102: the client transmits the self internet access attribute information to the server by using the first channel.
The network port attribute information comprises the number of network ports and network port information supporting multi-queue characteristics.
The multi-queue feature means that one portal can support multiple channels. The port information of the multi-queue characteristic includes the number of channels that the port can support. The client transmits the self internet access attribute information to the server, so that the server can know the internet access attribute of the client in time.
S103: and the server receives the internet access attribute information transmitted by the client through the first channel.
S104: and the server determines channel establishment information according to the network port attribute information transmitted by the client, the network port attribute information of the server and the current load of the server.
The channel establishing information comprises a target network port and the number of channels corresponding to the target network port.
For convenience of description, in the embodiment of the present invention, an example of a client is used for introduction. There may be multiple network ports on one client, and in practical application, the network port for establishing the channel may be referred to as a target network port.
The load-bearing capacity of the server is limited, and overload operation can affect the performance of the server, so that when the server selects a target network port and the number of channels corresponding to the target network port, the server can comprehensively consider the current load of the server in addition to the network port attribute information transmitted by the client and the network port attribute information of the server, and determine channel establishment information.
S105: and the server binds a corresponding transceiving thread for each channel in the channel establishment information and feeds the channel establishment information back to the client.
In order to ensure the availability of the channel, the server binds a corresponding transceiving thread for each channel in the channel establishment information.
S106: and the client establishes a channel with the server according to the target internet access and the number of the channels corresponding to the target internet access included in the channel establishment information.
The target network port refers to a network port through which a client can establish a channel with a server, the number of the target network ports can be one or more, each target network port has the corresponding channel number, and the client can establish a plurality of channels with the server according to the channel number of each target network port.
Fig. 2 is a flowchart of a method for determining channel establishment information according to portal attribute information of a client, portal attribute information of a server, and a current load of the server according to an embodiment of the present invention, where the method includes:
s201: and determining the number of channels which can be established according to the self network port attribute information and the self current load.
The network port attribute information of the server includes the number of network ports of the server and the number of channels that each network port can carry.
The maximum carrying capacity of the server is known information, and the number of channels which can be supported by the current service can be determined by combining the current carrying capacity of the server with the current carrying capacity of the server.
The server can know which network ports are available according to the network port attribute information of the server, and the number of channels supported by the available network ports can be obtained.
The server may use the minimum value of the number of channels that can be supported by the current service and the number of channels that can be supported by the available network port as the number of channels that can be established.
S202: and selecting the network port supporting the multi-queue characteristic from the network port attribute information transmitted by the client as a first target network port.
In the embodiment of the present invention, the network ports supporting the multi-queue feature are collectively referred to as a first target network port. In practical application, the network port supporting the multi-queue feature can be preferentially selected to establish the channel.
S203: and judging whether the channel number of the multi-queue characteristic of the first target network port is larger than or equal to the number of channels which can be established.
When the number of channels of the multi-queue feature of the first target portal is greater than or equal to the number of channels that can be established, it indicates that the first target portal can satisfy the number of channels that need to be established, and at this time, S204 may be performed.
When the number of channels with the multi-queue characteristic of the first target portal is smaller than the number of channels that can be established, it indicates that the number of channels established by the first target portal cannot reach the number of channels that can be established, and at this time, other portals may be further selected to establish channels, that is, S205 is performed.
S204: and taking the first target network port as a target network port of the channel establishment information, and taking the number of channels which can be established as the number of the channels of the first target network port.
For example, it is assumed that the number of channels that can be established is 5, the number of channels with the multi-queue characteristic of the first target network port is 6, and the channel establishment information includes the target network port and the number of channels corresponding to the target network port, at this time, the first target network port is used as the target network port of the channel establishment information, and the number of channels is 5 as the number of channels of the first target network port.
S205: and taking the number of the channels with the multi-queue characteristic of the first target network port as the number of the channels of the first target network port, and calculating the difference value between the number of the channels which can be established and the number of the channels with the multi-queue characteristic of the first target network port.
For example, assuming that the number of channels that can be established is 5, the number of channels with the multi-queue characteristic of the first target portal is 3, and only 3 channels can be established at most depending on the first target portal, and the number of channels that can be established cannot be reached, at this time, the difference between the number of channels that can be established and the number of channels with the multi-queue characteristic of the first target portal is 2.
S206: and selecting a second target internet access corresponding to the difference value from the internet access attribute information of the client.
When the number of channels that can be established by the network ports supporting the multi-queue characteristic in the client cannot reach the number of channels that can be established, in order to meet the number of channels that need to be established, the network ports with the number equal to the difference value can be selected from the network ports without the multi-queue characteristic in the client to serve as second target network ports. And each second target network port corresponds to one channel.
S207: and taking the first target internet access and the second target internet access as target internet accesses of channel establishment information.
When the number of the channels with the multi-queue characteristic of the first target network port is smaller than the number of the channels which can be established, the network ports with the number equal to the difference value can be selected as second target network ports, and at the moment, the first target network ports and the second target network ports can be combined to be used as the target network ports of the channel establishment information; the number of channels of the channel establishment information is the sum of the number of channels with the multi-queue characteristic of the first target network port and the number of the second target network ports.
According to the technical scheme, the client mounts the shared directory exported by the server to the local to establish a first channel with the server; transmitting self internet access attribute information to a server by using a first channel; the network port attribute information comprises the number of network ports and network port information supporting multi-queue characteristics. In order to realize load balance of multi-client services, the server can determine channel establishment information according to the network port attribute information transmitted by the client, the network port attribute information of the server and the current load of the server; the channel establishing information includes the target network port and the number of the channels corresponding to the target network port. In order to ensure the availability of the channels, the server binds corresponding transceiving threads for each channel in the channel establishment information and feeds the channel establishment information back to the client, so that the client establishes the channel with the server according to the target internet access and the number of the channels corresponding to the target internet access included in the channel establishment information. In the technical scheme, the server determines the target network ports capable of establishing the channels and the number of the channels corresponding to the target network ports by depending on the processing capacity of the server and the network port attribute of the client, and binds one transceiving thread for each channel, so that the server can exert the service performance of the server to the maximum extent, and the performance and the competitiveness of the storage product are improved.
In the embodiment of the invention, the server side can dynamically adjust the number of the channels between the server side and the client side according to actual requirements. In practical application, the server can count the data transmission amount of each channel in a period time; and when the target channel with the data transmission quantity smaller than the preset threshold value exists, transmitting a command of canceling the target channel to the client, and canceling the target channel established with the server when the client receives the command of canceling the target channel transmitted by the server.
By canceling the channel with smaller data transmission quantity, the occupation of useless channels on the network port resources can be effectively avoided, and the utilization rate of the network port resources is improved.
In practical application, a situation that a new client needs to establish a channel with a server may exist, and when the server receives a channel establishment request transmitted by the new client, whether the establishment of the new channel is supported or not may be judged.
When the server can support the establishment of the new channel, a channel establishment instruction can be fed back to the new client;
when the server cannot support the establishment of a new channel, in order to release the internet access resources, so that the server can support the connection of a new client, at the moment, the server can select a target channel of which the data transmission quantity is smaller than a preset threshold value in a period time from the established channels, and transmit an instruction of canceling the target channel to the client so as to facilitate the client to cancel the target channel established with the server; when response information of the completion of the cancellation of the target channel transmitted by the client is received, the response information of the completion of the cancellation of the target channel is transmitted to the new client feedback channel establishment instruction client and the server, so that the server can conveniently feed back the channel establishment instruction to the new client.
The value of the cycle time and the value of the preset threshold may be set according to actual requirements, and are not limited herein.
The number of the channels between the server and the client is dynamically adjusted by depending on the data transmission quantity of each channel, so that the occupation of useless channels on the network port resources can be effectively avoided, and the utilization rate of the network port resources is improved.
In order to facilitate management of the channel information corresponding to each client, after receiving a response message of completing channel establishment fed back by the client, the server may record the client and the channel establishment information corresponding to the client to a preset storage space.
The server can quickly acquire the client currently connected with the server and the occupied internet access resources by inquiring the information recorded in the storage space.
Fig. 3 is a schematic structural diagram of a multi-channel building apparatus based on an NFS protocol according to an embodiment of the present invention, which is suitable for a server, and includes a receiving unit 31, a determining unit 32, a binding unit 33, and a feedback unit 34;
a receiving unit 31, configured to receive portal attribute information transmitted by a client through a first channel; the network port attribute information comprises the number of network ports and network port information supporting multi-queue characteristics;
the determining unit 32 is configured to determine channel establishment information according to the portal attribute information transmitted by the client, the portal attribute information of the client, and the current load of the client; the channel establishing information comprises a target network port and the number of channels corresponding to the target network port;
a binding unit 33, configured to bind, for each channel in the channel establishment information, a corresponding transceiving thread;
the feedback unit 34 is configured to feed back the channel establishment information to the client, so that the client establishes a channel with the server according to the target internet access and the number of channels corresponding to the target internet access included in the channel establishment information.
Optionally, the determining unit includes a first determining subunit, a first selecting subunit, a judging subunit, a first serving subunit, a calculating subunit, a second selecting subunit, and a second serving subunit;
the first determining subunit is used for determining the number of channels which can be established according to the self internet access attribute information and the self current load capacity;
the first selection subunit is used for selecting the network port supporting the multi-queue characteristic from the network port attribute information transmitted by the client as a first target network port;
the judging subunit is used for judging whether the number of the channels with the multi-queue characteristic of the first target network port is greater than or equal to the number of the channels which can be established;
the first serving subunit is configured to, when the number of channels of the multi-queue characteristic of the first target portal is greater than or equal to the number of channels that can be established, take the first target portal as a target portal for channel establishment information, and take the number of channels that can be established as the number of channels of the first target portal;
a calculating subunit, configured to, when the number of channels with the multi-queue characteristic of the first target network port is smaller than the number of channels that can be established, take the number of channels with the multi-queue characteristic of the first target network port as the number of channels of the first target network port, and calculate a difference between the number of channels that can be established and the number of channels with the multi-queue characteristic of the first target network port;
the second selection subunit is used for selecting a second target internet access corresponding to the difference value from the internet access attribute information of the client; each second target network port corresponds to one channel;
and the second as a subunit, configured to use the first target portal and the second target portal as target portals of the channel establishment information.
Optionally, the system further comprises a statistical unit and a transmission unit;
the statistical unit is used for counting the data transmission quantity of each channel in the period time;
and the transmission unit is used for transmitting an instruction for canceling the target channel to the client when the target channel with the data transmission quantity smaller than the preset threshold exists so as to facilitate the client to cancel the target channel established with the server.
Optionally, the system further comprises a judging unit and a selecting unit;
the judging unit is used for judging whether the establishment of a new channel is supported or not when a channel establishing request transmitted by a new client is received; if yes, triggering a feedback unit to feed back a channel establishment instruction to the new client; if not, triggering a selection unit;
the selecting unit is used for selecting a target channel of which the data transmission quantity is smaller than a preset threshold value in a period time from the established channels, and transmitting an instruction for canceling the target channel to the client so as to facilitate the client to cancel the target channel established with the server;
the feedback unit is further configured to feed back a channel establishment instruction to the new client when receiving response information that the cancellation of the target channel is completed and is transmitted by the client.
Optionally, a recording unit is further included;
and the recording unit is used for recording the client and the corresponding channel establishment information thereof to the preset storage space after receiving the response message of the completion of the channel establishment fed back by the client.
The description of the features in the embodiment corresponding to fig. 3 may refer to the related description of the embodiment corresponding to fig. 1, and is not repeated here.
According to the technical scheme, the server receives the internet access attribute information transmitted by the client through the first channel; the network port attribute information comprises the number of network ports and network port information supporting multi-queue characteristics. In order to realize load balance of multi-client services, the server can determine channel establishment information according to the network port attribute information transmitted by the client, the network port attribute information of the server and the current load of the server; the channel establishing information includes the target network port and the number of the channels corresponding to the target network port. In order to ensure the availability of the channels, the server binds corresponding transceiving threads for each channel in the channel establishment information, and feeds the channel establishment information back to the client, so that the client establishes the channel with the server according to the target internet access and the number of the channels corresponding to the target internet access included in the channel establishment information. In the technical scheme, the server determines the target network ports capable of establishing the channels and the number of the channels corresponding to the target network ports by depending on the processing capacity of the server and the network port attribute of the client, and binds one transceiving thread for each channel, so that the server can exert the service performance of the server to the maximum extent, and the performance and the competitiveness of the storage product are improved.
Fig. 4 is a schematic structural diagram of a multi-channel building apparatus based on an NFS protocol according to an embodiment of the present invention, which is suitable for a client, and includes a mounting unit 41, a transmitting unit 42, a receiving unit 43, and a establishing unit 44;
a mounting unit 41, configured to mount the shared directory exported by the server to a local location, so as to establish a first channel with the server;
a transmission unit 42, configured to transmit the self portal attribute information to the server through the first channel; the network port attribute information comprises the number of network ports and network port information supporting multi-queue characteristics;
a receiving unit 43, configured to receive channel establishment information fed back by the server; the channel establishing information is determined and obtained by the server according to the network port attribute information transmitted by the client, the network port attribute information of the server and the current load of the server;
the establishing unit 44 is configured to establish a channel with the server according to the target internet access and the number of channels corresponding to the target internet access included in the channel establishing information; .
Optionally, a revocation unit is further included;
the revocation unit is used for revoking the target channel established with the server when receiving a command of revoking the target channel transmitted by the server; the target channel is a channel with the data transmission quantity smaller than a preset threshold value in the period time.
The description of the features in the embodiment corresponding to fig. 4 may refer to the related description of the embodiment corresponding to fig. 1, and is not repeated here.
According to the technical scheme, the client mounts the shared directory exported by the server to the local to establish a first channel with the server; transmitting self internet access attribute information to a server by using a first channel; the network port attribute information comprises the number of network ports and network port information supporting multi-queue characteristics. Receiving channel establishment information fed back by a server, wherein the channel establishment information is determined by the server according to the network port attribute information transmitted by the client, the network port attribute information of the server and the current load of the server; the channel establishing information comprises a target internet access and the number of channels corresponding to the target internet access, and each channel in the channel establishing information is bound with a corresponding transceiving thread. And the client establishes a channel with the server according to the target internet access and the number of the channels corresponding to the target internet access included in the channel establishment information. In the technical scheme, the server determines the target network ports capable of establishing the channels and the number of the channels corresponding to the target network ports by depending on the processing capacity of the server and the network port attribute of the client, and binds one receiving and sending thread for each channel, so that the server can exert the service performance of the server to the maximum, and the performance and the competitiveness of the storage product are improved.
Fig. 5 is a schematic structural diagram of a multi-channel building system 50 based on an NFS protocol according to an embodiment of the present invention, including a client 51 and a server 52;
the client 51 is used for mounting the shared directory exported by the server 52 to the local so as to establish a first channel with the server 52; transmitting the self internet access attribute information to the server 52 by using the first channel; the network port attribute information comprises the number of network ports and network port information supporting multi-queue characteristics; receiving channel establishment information fed back by the server 52; establishing a channel with the server 52 according to the target internet access and the number of channels corresponding thereto included in the channel establishment information;
a server 52, configured to receive the portal attribute information transmitted by the client 51 through the first channel; determining channel establishment information according to the network port attribute information transmitted by the client 51, the network port attribute information of the client and the current load of the client; and binding a corresponding transceiving thread for each channel in the channel establishing information, and feeding back the channel establishing information to the client 51.
The description of the features in the embodiment corresponding to fig. 5 may refer to the related description of the embodiment corresponding to fig. 1, and is not repeated here.
According to the technical scheme, the client mounts the shared directory exported by the server to the local to establish a first channel with the server; transmitting self network port attribute information to a server by using a first channel; the network port attribute information comprises the number of network ports and network port information supporting multi-queue characteristics. In order to realize load balance of multi-client services, the server can determine channel establishment information according to the network port attribute information transmitted by the client, the network port attribute information of the server and the current load of the server; the channel establishing information includes the target network port and the number of the channels corresponding to the target network port. In order to ensure the availability of the channels, the server binds corresponding transceiving threads for each channel in the channel establishment information and feeds the channel establishment information back to the client, so that the client establishes the channel with the server according to the target internet access and the number of the channels corresponding to the target internet access included in the channel establishment information. In the technical scheme, the server determines the target network ports capable of establishing the channels and the number of the channels corresponding to the target network ports by depending on the processing capacity of the server and the network port attribute of the client, and binds one receiving and sending thread for each channel, so that the server can exert the service performance of the server to the maximum, and the performance and the competitiveness of the storage product are improved.
The method, the device and the system for constructing the multiple channels based on the NFS protocol provided by the embodiment of the present invention are described in detail above. The embodiments are described in a progressive mode in the specification, the emphasis of each embodiment is on the difference from the other embodiments, and the same and similar parts among the embodiments can be referred to each other. The device disclosed by the embodiment corresponds to the method disclosed by the embodiment, so that the description is simple, and the relevant points can be referred to the method part for description. It should be noted that, for those skilled in the art, it is possible to make various improvements and modifications to the present invention without departing from the principle of the present invention, and those improvements and modifications also fall within the scope of the claims of the present invention.
Those of skill would further appreciate that the various illustrative elements and algorithm steps described in connection with the embodiments disclosed herein may be implemented as electronic hardware, computer software, or combinations of both, and that the various illustrative components and steps have been described above generally in terms of their functionality in order to clearly illustrate this interchangeability of hardware and software. Whether such functionality is implemented as hardware or software depends upon the particular application and design constraints imposed on the technical solution. Skilled artisans may implement the described functionality in varying ways for each particular application, but such implementation decisions should not be interpreted as causing a departure from the scope of the present invention.
The steps of a method or algorithm described in connection with the embodiments disclosed herein may be embodied directly in hardware, in a software module executed by a processor, or in a combination of the two. A software module may reside in Random Access Memory (RAM), memory, read-only memory (ROM), electrically programmable ROM, electrically erasable programmable ROM, registers, hard disk, a removable disk, a CD-ROM, or any other form of storage medium known in the art.

Claims (10)

1. A multichannel construction method based on NFS protocol is characterized by being applicable to a server side, and comprises the following steps:
receiving internet access attribute information transmitted by a client through a first channel; the network port attribute information comprises the number of network ports and network port information supporting multi-queue characteristics;
determining channel establishment information according to the network port attribute information transmitted by the client, the network port attribute information of the client and the current load of the client; the channel establishing information comprises a target internet access and the number of channels corresponding to the target internet access;
and binding a corresponding transceiving thread for each channel in the channel establishment information, and feeding back the channel establishment information to the client, so that the client establishes a channel with the server according to the target internet access and the number of the channels corresponding to the target internet access included in the channel establishment information.
2. The NFS protocol-based multi-channel construction method according to claim 1, wherein the determining, according to the portal attribute information transmitted by the client, the portal attribute information of the client, and the current load amount of the client, channel construction information includes:
determining the number of channels which can be established according to the self internet access attribute information and the self current load capacity;
selecting the network port supporting the multi-queue characteristic from the network port attribute information transmitted by the client as a first target network port;
judging whether the number of channels with the multi-queue characteristic of the first target network port is larger than or equal to the number of channels which can be established;
when the number of channels with the multi-queue characteristic of the first target internet access is greater than or equal to the number of channels which can be established, taking the first target internet access as a target internet access of channel establishment information, and taking the number of channels which can be established as the number of channels of the first target internet access;
when the number of the channels with the multi-queue characteristic of the first target network port is smaller than the number of the channels which can be established, taking the number of the channels with the multi-queue characteristic of the first target network port as the number of the channels of the first target network port, and calculating the difference value between the number of the channels which can be established and the number of the channels with the multi-queue characteristic of the first target network port;
selecting a second target internet access corresponding to the difference value from the internet access attribute information of the client; each second target network port corresponds to one channel;
and taking the first target internet access and the second target internet access as target internet accesses of the channel establishment information.
3. The NFS protocol-based multi-channel construction method according to claim 1, further comprising, after the feeding back the channel establishment information to the client:
counting the data transmission quantity of each channel in the period time;
and when a target channel with the data transmission quantity smaller than a preset threshold value exists, transmitting an instruction of canceling the target channel to the client so as to facilitate the client to cancel the target channel established with the server.
4. The NFS protocol-based multi-channel construction method according to claim 1, further comprising after the feeding back the channel establishment information to the client:
when a channel establishment request transmitted by a new client is received, judging whether the establishment of a new channel is supported;
if yes, feeding back a channel establishment instruction to the new client;
if not, selecting a target channel of which the data transmission quantity is smaller than a preset threshold value in a period time from the established channels, and transmitting a command of canceling the target channel to the client so as to facilitate the client to cancel the target channel established with the server;
and when response information of the completion of the cancellation of the target channel transmitted by the client is received, feeding back a channel establishment instruction to the new client.
5. The NFS protocol-based multi-channel construction method according to any one of claims 1 to 4, wherein after the binding a corresponding transceiving thread for each channel in the channel establishment information and feeding back the channel establishment information to the client, the method further includes:
and after receiving a response message of completing the channel establishment fed back by the client, recording the client and the channel establishment information corresponding to the client to a preset storage space.
6. A multichannel construction device based on NFS protocol is characterized by being applicable to a server side and comprising a receiving unit, a determining unit, a binding unit and a feedback unit;
the receiving unit is used for receiving the internet access attribute information transmitted by the client through the first channel; the network port attribute information comprises the number of network ports and network port information supporting multi-queue characteristics;
the determining unit is used for determining channel establishment information according to the network port attribute information transmitted by the client, the network port attribute information of the determining unit and the current load of the determining unit; the channel establishing information comprises a target internet access and the number of channels corresponding to the target internet access;
the binding unit is used for binding a corresponding transceiving thread for each channel in the channel establishing information;
the feedback unit is configured to feed back the channel establishment information to the client, so that the client establishes a channel with the server according to a target internet access and the number of channels corresponding to the target internet access included in the channel establishment information.
7. A multichannel construction method based on NFS protocol is characterized by being applicable to a client, and the method comprises the following steps:
mounting a shared directory exported by a server to the local to establish a first channel with the server;
transmitting self internet access attribute information to the server by using the first channel; the network port attribute information comprises the number of network ports and network port information supporting multi-queue characteristics;
receiving channel establishment information fed back by the server; the channel establishment information is determined and obtained by the server according to the internet access attribute information transmitted by the client, the internet access attribute information of the server and the current load of the server;
establishing a channel with the server side according to the target internet access and the number of the channels corresponding to the target internet access included in the channel establishing information; and each target network port is provided with a corresponding transceiving thread.
8. The NFS protocol-based multi-channel construction method according to claim 7, wherein after the establishing of the channel with the server according to the target portal and the number of channels corresponding to the target portal included in the channel establishment information, the method further includes:
when receiving a command of canceling a target channel transmitted by the server, canceling the target channel established with the server; and the target channel is a channel of which the data transmission quantity in the period time is less than a preset threshold value.
9. A multi-channel construction device based on NFS protocol is characterized in that the device is suitable for a client, and comprises a mounting unit, a transmission unit, a receiving unit and a construction unit;
the mounting unit is used for mounting the shared directory exported by the server to the local so as to establish a first channel with the server;
the transmission unit is used for transmitting the self internet access attribute information to the server by using the first channel; the network port attribute information comprises the number of network ports and network port information supporting multi-queue characteristics;
the receiving unit is used for receiving the channel establishment information fed back by the server; the channel establishment information is determined and obtained by the server according to the internet access attribute information transmitted by the client, the internet access attribute information of the server and the current load of the server;
the establishing unit is used for establishing a channel with the server side according to the target internet access and the number of the channels corresponding to the target internet access included in the channel establishing information; and each target network port is provided with a corresponding transceiving thread.
10. A multi-channel construction system based on NFS protocol is characterized by comprising a client and a server;
the client is used for mounting the shared directory exported by the server to the local so as to establish a first channel with the server; transmitting the self internet access attribute information to the server by using the first channel; the network port attribute information comprises the number of network ports and network port information supporting multi-queue characteristics; receiving channel establishment information fed back by the server; establishing a channel with the server according to the target internet access and the number of the channels corresponding to the target internet access included in the channel establishment information;
the server is used for receiving the internet access attribute information transmitted by the client through the first channel; determining channel establishment information according to the network port attribute information transmitted by the client, the network port attribute information of the client and the current load of the client; and binding a corresponding transceiving thread for each channel in the channel establishment information, and feeding back the channel establishment information to the client.
CN202011026522.0A 2020-09-25 2020-09-25 Multi-channel construction method, device and system based on NFS protocol Active CN112217883B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202011026522.0A CN112217883B (en) 2020-09-25 2020-09-25 Multi-channel construction method, device and system based on NFS protocol

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202011026522.0A CN112217883B (en) 2020-09-25 2020-09-25 Multi-channel construction method, device and system based on NFS protocol

Publications (2)

Publication Number Publication Date
CN112217883A CN112217883A (en) 2021-01-12
CN112217883B true CN112217883B (en) 2023-01-10

Family

ID=74051171

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202011026522.0A Active CN112217883B (en) 2020-09-25 2020-09-25 Multi-channel construction method, device and system based on NFS protocol

Country Status (1)

Country Link
CN (1) CN112217883B (en)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113612811B (en) * 2021-06-20 2023-04-07 济南浪潮数据技术有限公司 Method, system, equipment and medium for client mounting in multiple channels

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104750543A (en) * 2013-12-26 2015-07-01 杭州华为数字技术有限公司 Thread creation method, business request processing method and associated device
CN106060012A (en) * 2016-05-17 2016-10-26 北京神州绿盟信息安全科技股份有限公司 Multiplexing method and apparatus
CN109151082A (en) * 2018-11-02 2019-01-04 郑州云海信息技术有限公司 A kind of multi-connection method for building up, device and system

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8898227B1 (en) * 2013-05-10 2014-11-25 Owl Computing Technologies, Inc. NFS storage via multiple one-way data links

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104750543A (en) * 2013-12-26 2015-07-01 杭州华为数字技术有限公司 Thread creation method, business request processing method and associated device
CN106060012A (en) * 2016-05-17 2016-10-26 北京神州绿盟信息安全科技股份有限公司 Multiplexing method and apparatus
CN109151082A (en) * 2018-11-02 2019-01-04 郑州云海信息技术有限公司 A kind of multi-connection method for building up, device and system

Also Published As

Publication number Publication date
CN112217883A (en) 2021-01-12

Similar Documents

Publication Publication Date Title
US9497767B2 (en) Wireless communication apparatus, wireless communication method, and computer-readable recording medium
KR100715674B1 (en) Load balancing method and software steaming system using the same
US10237315B2 (en) Distributing communication of a data stream among multiple devices
CN105324966B (en) The control method and device of load transmission
US20140129667A1 (en) Content delivery system, controller and content delivery method
CN106953797B (en) RDMA data transmission method and device based on dynamic connection
US20160007223A1 (en) Multi-Stream Service Concurrent Transmission Method, SubSystem, System And Multi-Interface Terminal
CN104394441A (en) Video content distribution scheduling method, device and system
US20210377799A1 (en) Data Packet Distribution Method, Sender Device, Receiver Device and Storage Medium
US20140036680A1 (en) Method to Allocate Packet Buffers in a Packet Transferring System
CN112351083B (en) Service processing method and network service system
CN110708377A (en) Data transmission method, device and storage medium
JP5928472B2 (en) Content distribution system, cache server, and content distribution method
JP2002057699A (en) Packet transmission system, packet transmission method and recording medium
CN112350952A (en) Controller distribution method and network service system
CN110445723A (en) A kind of network data dispatching method and fringe node
CN112217883B (en) Multi-channel construction method, device and system based on NFS protocol
WO2007022440A2 (en) Resource selection in a communication network
EP2731017B1 (en) Content distribution system, cache server and content distribution method
US9763133B2 (en) Content delivery system and content delivery method
US20090310576A1 (en) Communication control method, communication monitoring method, communication system, access point and program
EP3038306B1 (en) Load balancing method and system
KR20150022385A (en) Method and Apparatus for Controlling Traffic for Reducing Completion Time of Transmitting Data
JP5088291B2 (en) BAND CONTROL DEVICE, BAND CONTROL METHOD, ITS PROGRAM, BAND CONTROL SYSTEM
CN108370372A (en) A kind of transmission method of data packet, network side equipment and user equipment

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant