CN109150708B - Method and device for selecting data forwarding interface - Google Patents

Method and device for selecting data forwarding interface Download PDF

Info

Publication number
CN109150708B
CN109150708B CN201810989887.XA CN201810989887A CN109150708B CN 109150708 B CN109150708 B CN 109150708B CN 201810989887 A CN201810989887 A CN 201810989887A CN 109150708 B CN109150708 B CN 109150708B
Authority
CN
China
Prior art keywords
interface
forwarding
data
interfaces
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.)
Active
Application number
CN201810989887.XA
Other languages
Chinese (zh)
Other versions
CN109150708A (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.)
Computer Network Information Center of CAS
Original Assignee
Computer Network Information Center of CAS
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 Computer Network Information Center of CAS filed Critical Computer Network Information Center of CAS
Priority to CN201810989887.XA priority Critical patent/CN109150708B/en
Publication of CN109150708A publication Critical patent/CN109150708A/en
Application granted granted Critical
Publication of CN109150708B publication Critical patent/CN109150708B/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
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/24Multipath
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/74Address processing for routing

Landscapes

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

Abstract

The application provides a method and a device for selecting a data forwarding interface, wherein the method comprises the following steps: the technical scheme is adopted, a mode of selecting the forwarding interface is provided, the problem of low information forwarding efficiency in an NDN (named data networking) network caused by the mode of selecting the forwarding interface in the related technology is solved, when the data transmission parameters of a plurality of interfaces change in real time, the sequence of the forwarding interfaces is determined according to different rules, the forwarding interfaces are dynamically changeable, and the real-time change of the NDN network is fully considered.

Description

Method and device for selecting data forwarding interface
Technical Field
The present application relates to, but not limited to, the field of communications, and in particular, to a method and an apparatus for selecting a data forwarding interface.
Background
In the related art, Named Data Networks (NDNs) are the mainstream future internet architecture at present, which attracts extensive attention in academia and industry, and equipment manufacturers have developed NDN router equipment and deployed NDN Network test beds in various countries around the world. Unlike the traditional transmission control protocol/internet protocol (TCP/IP) network architecture, the NDN takes named contents as a core, and the contents are independent of positions, so that in-network caching and sharing of the contents are promoted, and the content transmission efficiency is greatly improved. Delivery of NDN web content is based on the name of the content rather than the address, and the transmission is connectionless. Thus, the NDN may be transmitted simultaneously using multiple links (e.g., ethernet, long term evolution network LTE, bluetooth, WiFi, wireless fidelity, etc.). Compared with single-path transmission, the multi-path transmission by using various links at the same time can obviously improve the transmission efficiency. How to utilize multi-path transmission requires designing appropriate path selection and packet forwarding strategies on the NDN network nodes. Therefore, the forwarding policy design of the NDN network is crucial to fully utilize the resources of multiple paths for transmission.
For the problem of low information forwarding efficiency in the NDN network caused by the manner of selecting the forwarding interface in the related art, no effective solution is currently available.
Disclosure of Invention
The embodiment of the application provides a method and a device for selecting a data forwarding interface, so as to at least solve the problem of low information forwarding efficiency in an NDN (network data networking) network caused by a mode of selecting the forwarding interface in the related art.
According to an embodiment of the present application, there is provided a method for selecting a data forwarding interface, including: obtaining at least two data transmission parameters of one or more forwarding interfaces, wherein the data transmission parameters include: bandwidth delay product BDP, forwarding interface capacity C, and the number PI of request packets which have been sent by the forwarding interface but have not received responses; dividing the forwarding interfaces to a forwarding interface set according to the magnitude relation among a plurality of data transmission parameters of each forwarding interface; sorting the internal forwarding interfaces according to different sorting rules aiming at different forwarding interface sets; and selecting a forwarding interface for the next request packet to be transmitted according to the sorting result.
According to another embodiment of the present document, there is also provided a data forwarding interface selection apparatus, including: an obtaining device, configured to obtain at least two data transmission parameters of one or more forwarding interfaces, where the data transmission parameters include: bandwidth delay product BDP, forwarding interface capacity C, and the number PI of request packets which have been sent by the forwarding interface but have not received responses; the dividing module is used for dividing the forwarding interfaces to the forwarding interface set according to the size relationship among the data transmission parameters of each forwarding interface; the sequencing module is used for sequencing the internal forwarding interfaces according to different sequencing rules aiming at different forwarding interface sets; and the selection module is used for selecting a forwarding interface for the next request packet to be transmitted according to the sequencing result.
According to a further embodiment of the present application, there is also provided a storage medium having a computer program stored therein, wherein the computer program is arranged to perform the steps of any of the above method embodiments when executed.
According to yet another embodiment of the present application, there is also provided an electronic device, comprising a memory in which a computer program is stored and a processor arranged to run the computer program to perform the steps of any of the above method embodiments.
By the aid of the technical scheme, a mode of selecting the forwarding interfaces is provided, the problem of low information forwarding efficiency in an NDN (named data networking) network due to the mode of selecting the forwarding interfaces in the related technology is solved, when data transmission parameters of the interfaces change in real time, the sequence of the forwarding interfaces is determined according to different rules, the forwarding interfaces are dynamically changeable, and real-time change of the NDN network is fully considered.
Drawings
The accompanying drawings, which are included to provide a further understanding of the application and are incorporated in and constitute a part of this application, illustrate embodiment(s) of the application and together with the description serve to explain the application and not to limit the application. In the drawings:
fig. 1 is a block diagram of a hardware structure of a computer terminal of a method for selecting a data forwarding interface according to an embodiment of the present application;
fig. 2 is a flow chart of a method of selecting a data forwarding interface according to an embodiment of the present application;
fig. 3 is a DMF forwarding policy module deployment diagram according to another embodiment of the present application;
FIG. 4 is a functional block diagram of a DMF forwarding policy according to another embodiment of the present application;
FIG. 5 is a multipath forwarding experiment topology according to another embodiment of the present application;
FIG. 6 is a graphical representation of experimental results according to another embodiment of the present application.
Detailed Description
The present application will be described in detail below with reference to the accompanying drawings in conjunction with embodiments. It should be noted that the embodiments and features of the embodiments in the present application may be combined with each other without conflict.
It should be noted that the terms "first," "second," and the like in the description and claims of this application and in the drawings described above are used for distinguishing between similar elements and not necessarily for describing a particular sequential or chronological order.
Example one
Embodiments of the present application provide a communication network (including but not limited to an NDN network) whose network architecture may include consumer devices, routers, and content producer devices. In this embodiment, a method for selecting a data forwarding interface that can be operated on the network architecture is provided, and it should be noted that an operating environment of the method for selecting a data forwarding interface provided in this embodiment of the present application is not limited to the network architecture.
The method provided by the first embodiment of the present application may be executed in a computer terminal, or a similar computing device. Taking an example of the method running on a computer terminal, fig. 1 is a block diagram of a hardware structure of the computer terminal of a method for selecting a data forwarding interface according to an embodiment of the present application. As shown in fig. 1, the computer terminal may include one or more (only one shown in fig. 1) processors 102 (the processor 102 may include, but is not limited to, a processing device such as a microprocessor MCU or a programmable logic device FPGA) and a memory 104 for storing data, and optionally, a transmission device 106 for communication functions and an input-output device 108. It will be understood by those skilled in the art that the structure shown in fig. 1 is only an illustration and is not intended to limit the structure of the computer terminal. For example, the computer terminal may also include more or fewer components than shown in FIG. 1, or have a different configuration than shown in FIG. 1.
The memory 104 may be configured to store software programs and modules of application software, such as program instructions/modules corresponding to the selection method of the data forwarding interface in the embodiment of the present application, and the processor 102 executes various functional applications and data processing by running the software programs and modules stored in the memory 104, so as to implement the above-mentioned method. The memory 104 may include high speed random access memory, and may also include non-volatile memory, such as one or more magnetic storage devices, flash memory, or other non-volatile solid-state memory. In some examples, the memory 104 may further include memory located remotely from the processor 102, which may be connected to a computer terminal over a network. Examples of such networks include, but are not limited to, the internet, intranets, local area networks, mobile communication networks, and combinations thereof.
The transmission device 106 is used for receiving or transmitting data via a network. Specific examples of the network described above may include a wireless network provided by a communication provider of the computer terminal. In one example, the transmission device 106 includes a Network adapter (NIC) that can be connected to other Network devices through a base station to communicate with the internet. In one example, the transmission device 106 can be a Radio Frequency (RF) module, which is used to communicate with the internet in a wireless manner.
In this embodiment, a method operating on the computer terminal or the router device is provided, and fig. 2 is a flowchart of a method for selecting a data forwarding interface according to an embodiment of the present application, and as shown in fig. 2, the flowchart includes the following steps:
step S202, obtaining at least two data transmission parameters of one or more forwarding interfaces, where the data transmission parameters include: bandwidth delay product BDP, forwarding interface capacity C, and the number PI of request packets which have been sent by the forwarding interface but have not received responses;
alternatively, the calculation of the BDP, C value can be seen in the following examples.
Step S204, dividing the forwarding interface to a forwarding interface set according to the magnitude relation among a plurality of data transmission parameters of each forwarding interface;
step S206, aiming at different forwarding interface sets, sorting the internal forwarding interfaces according to different sorting rules.
Optionally, the interface selection method may be divided into three interface sets, and when a forwarding interface is subsequently selected, an interface in the first interface set is preferentially selected, and when no interface in the first interface set is available, an interface in the second interface set is selected.
Step S208, selecting a forwarding interface for the next request packet to be transmitted according to the sorting result.
Optionally, the scheme of this document is a dynamic scheme, and after an interface forwards a request packet, an attributed interface set is determined again according to the current transmission parameter of the interface, so as to prepare for next selection of a forwarding interface.
By adopting the technical scheme, a mode of selecting the forwarding interface is provided, the problem of low information forwarding efficiency in an NDN network caused by the mode of selecting the forwarding interface in the related technology is solved, when the data transmission parameters of the interfaces change in real time, the sequence of the forwarding interfaces is determined according to different rules, the forwarding interfaces are dynamically changeable, and the real-time change of the NDN network is fully considered.
Optionally, the dividing, according to a size relationship between a plurality of data transmission parameters of each forwarding interface, the forwarding interface into a set of forwarding interfaces includes one of:
when the first PI of a first interface is smaller than or equal to the first BDP of the first interface, determining that the first interface belongs to a first interface set;
when a second PI of a second interface is larger than a second BDP of the second interface and smaller than or equal to a second C of the second interface, determining that the second interface belongs to a second interface set;
when the third PI of the third interface is larger than the third C of the third interface, determining that the third interface belongs to a third interface set.
The manner of dividing the first interface set, the second interface set, and the third interface set in the above embodiment is only optional, and other descriptions may exist when the threshold value is equal to the threshold value, for example: and when the second PI of the second interface is larger than or equal to the second BDP and smaller than the second C, determining that the second interface is a second interface set. When PI is greater than or equal to C, the corresponding interface may also be divided into a third interface set.
Optionally, for different forwarding interface sets, sorting the internal forwarding interfaces according to different sorting rules, including:
in the first interface set, sequencing according to the round trip time RTT of each interface from small to large;
and in the second interface set, sorting according to the bandwidth of each interface from large to small.
The ordering is performed according to different rules in different interface sets, and the description mode can be changed, for example: in the first interface set, sorting is carried out according to the RTT of each interface from large to small, and an interface with small RTT is preferentially selected when the interface is determined to be forwarded subsequently. In the second interface set, according to the order of the bandwidth of each interface from small to large, the interface with large bandwidth is preferentially selected when the forwarding interface is determined in the second interface set subsequently.
Optionally, selecting a forwarding interface for the next request packet to be transmitted according to the sorting result, including: and sequentially selecting the interface in the first interface set and the interface in the second interface set as the data forwarding interface of the next data packet according to the sequence of the first interface set and the second interface set.
Optionally, when it is determined that the plurality of forwarding interfaces all belong to the third interface set, discarding the next packet. And when the PI of the current forwarding interface is larger than C and belongs to the third interface set, the current forwarding interface can not forward new data any more, and only the new data request packet needs to be discarded.
Optionally, the ordering rule comprises one of: in an interface set, sequencing according to the round trip time RTT of each interface from small to large; in one interface set, the interfaces are sorted according to the bandwidth of each interface from large to small. In this embodiment, a plurality of interface sets may be divided according to the magnitude relationship of the data transmission parameters, wherein some interface sets may be ordered according to the rule of this embodiment, and all are within the protection scope of this application.
Optionally, before selecting a forwarding interface for a next request packet to be transmitted according to the sorting result, receiving a request packet sent by the consumer device includes one of: after the data packet corresponding to the request packet is inquired in the cache, the data packet is fed back to the consumer equipment, and the request packet is not forwarded; after the data packet corresponding to the request packet is not inquired in the cache, the data item corresponding to the request packet is inquired in the interest packet table PIT to be met, and the request packet is forwarded according to the interface indicated in the data item.
Preferentially, whether the data packet corresponding to the request packet is hit or not is confirmed in the equipment cache, if not, the data packet is searched in the PIT, and if not, the forwarding interface is searched in the plurality of divided interface sets.
The following description is made in conjunction with another embodiment of the present document.
In the related art, there is not much related work in the multi-path forwarding policy of NDN, and the existing work is limited to statically forwarding according to a single performance index such as a path length, a round trip delay RTT, and a link available bandwidth in a content delivery process.
Aiming at the problem of multipath forwarding of the NDN, the dynamic multipath forwarding strategy in the named data network is designed by innovatively providing dynamic forwarding according to different performance indexes such as RTT (round trip time) and available bandwidth at different transmission stages by deeply analyzing decisive factors of the transmission rate in the transmission process so as to maximize content delivery efficiency.
In view of the problems in the related art, the present document proposes a Dynamic Multi-path Forwarding (DMF) strategy in a named data network to solve the above problems.
According to one aspect of the application, a multi-path forwarding policy software module in a named data network is provided, and a deployment topological graph of the module in an NDN is as follows:
fig. 3 is a schematic diagram illustrating a DMF forwarding policy module deployment according to another embodiment of the present application, and as shown in fig. 3, the DMF forwarding policy module may be deployed as a software module at an intermediate router node in an NDN network, and implemented at a policy layer in a protocol stack of the NDN network, where a network topology and a node configuration in the related art need not be changed. The NDN network adopts a transmission mode of receiving end drive (Receiver-driver), a content consumer sends an Interest packet of a content request to a content producer, and the producer with the content returns a required Data packet. The Interest packet and the Data packet are in One-Interest-One-Data One-to-One correspondence. The transmission of the returned Data packet can be indirectly controlled by controlling the forwarding of the Interest packet. The consumer side typically employs an Additive Increase Multiplicative Decrease (AIMD) congestion window control algorithm similar to TCP. After an Interest packet in the NDN is forwarded to a router, the DMF determines that the Interest packet is forwarded to a node of a next hop; after the Data source returns the Data packet in response, the Data source is forwarded to the Data request end by the router, and in the whole forwarding process, the intermediate router node can forward by using a plurality of paths. The subsequent Interest packet corresponds to the request packet in the above embodiment, and the Data packet corresponds to the Data packet in the above embodiment.
Fig. 4 is a functional block diagram of a DMF forwarding strategy according to another embodiment of the present application, as shown in fig. 4, in the DMF forwarding process, first, a cache (Content Store) is searched, and if there is a hit, data is directly returned to a data request end; if the data item is not hit, searching an Interest packet Table (Pending Interest Table) to be met, if the data item is hit, directly adding an entry of the data packet into the corresponding data item in the Table, determining a forwarding interface according to the Table, if the data item is not hit, searching an S1 set, wherein S1 is an interface set which is not met by the bandwidth occupancy rate, and if the data item is searched successfully S1, directly forwarding the Interest packet from the interface meeting the condition; if the search fails, searching for an interface from the set S2, S2 is the interface set with saturated bandwidth utilization rate but not exceeding the link capacity, if the search succeeds, directly forwarding the interest packet from the searched interface, and if the search fails, discarding the data packet. The set of S1 may correspond to the first interface set in the above implementation, and the set of S2 may correspond to the second interface set in the above embodiment.
The definition in this application is as follows: the ith interface of the router is facei, the bandwidth is BWi, the round-trip delay with the content source is RTTi, the interface has a FIFO type buffer queue, the size is Bi, and the unit of Bi can be the number of packets. The bandwidth-delay product of facei is BDPi, and the size of the bandwidth-delay product is the calculation result of formula 1, and the unit can be the number of packets, and SD in formula 1 is the size of Data packets. The quantity of the Interest packets forwarded from the facei in the PIT table is PIi (pending interests), and the PIi value is the quantity of the Interest packets which are forwarded and have not received the Data packets corresponding to the returned Data. The facei has a capacity of Ci, which is the calculation of equation 2, and the unit may be the number of packets. The above definitions are to be understood as definitions in the related art.
BDPi is (BWi × RTTi)/SD formula (1)
Ci ═ BDPi + Bi formula (2)
Considering the whole transmission process, the transmission process can be divided into three stages, in the initial stage, because the sending window is small, the link load is low, the transmission rate is mainly determined by the transmission delay, and the stage lasts until the unacknowledged data packet on the link exceeds the BDP, namely the value of Pi is larger than the BDP; the second stage is a saturation stage, in which the transmission rate is mainly determined by the bandwidth; the third stage is an overload state, packet loss occurs at this time, the sending rate is adjusted by the sending end, the transmission rate is reduced, the sending end can be a consumer end, and the receiving end can be a content producer end or a producer end. Therefore, the corresponding content transmission rate is deduced as follows:
prop.1, if PIi is less than BDPi, the time delay plays a dominant role in the data transmission effect;
prop.2, if BDPi < PIi < Ci, the bandwidth (Band Width) plays a dominant role in the data transmission effect;
prop.3: i if PIi > Ci, packet loss is lost.
As described earlier, "═ can be increased in each condition.
According to the above analysis, a Dynamic Multi-path Forwarding (DMF) strategy is proposed herein, where the DMF Forwarding strategy dynamically selects a Forwarding path/interface by using round trip delay RTT and available bandwidth BW as Forwarding performance indexes according to changes in a transmission phase, and aims to maximize a transmission rate.
The process of selecting a forwarding interface by the DMF comprises the following steps: firstly, defining an interface set S1, S2 and S1 for each content, wherein elements in the interface set S1, S2 and S1 are interfaces with PI values not reaching BDP, meanwhile, the interfaces are sorted from small to large according to RTT, and the interface with small RTT is preferentially selected as a data forwarding interface in S1. The elements in the S2 are interfaces with PI values exceeding BDP but not exceeding C, the interfaces are sorted from BW to BW, and the interfaces with large bandwidth are preferentially selected as data forwarding interfaces in S2.
In the process of forwarding the data packet, the router node queries a forwarding Information Base (FIB for short) table, determines a forwarding interface to obtain S1, and selects an interface with the smallest RTT from S1 for forwarding if S1 is not empty; if the PI value of interface F exceeds BDP, removing the interface from S1 and adding the interface into S2; as the forwarding process continues, S1 becomes empty set, and then a forwarding interface is selected from S2, the priority of interface selection in S2 is bandwidth, an interface with high bandwidth is selected first, when the interface PI value in S2 is smaller than BDP, the interface is removed from S2 and added to S1, and when the interface PI value in S2 is larger than BDP, the interface is removed from S2. When both S1 and S2 are empty sets, the Interest packet has no interface forwarding, and the Interest packet is discarded. The algorithm for DMF is as follows.
The following gives a section of pseudo code for implementing the present document:
Algorithm 1Procedure of the DMF forwarding strategy
1:PIi=0for i=1...N
2:BDPi=BWi*RTTi
3:Ci=BDPi+Bi
4:S1=null,S2=null
5:function UPDATE(S1,S2)
6:for i=1...N do
7:Form the set S1 of face indexes i
8:s.t..PIi≤BDPi
9:end for
10:for i=1...N do
11:Form the set S2 of face indexes i
12:s.t..BDPi<PI i≤Ci
13:end for
14:end function
function ONINTEREST(INTEREST PKT,SEQ)
16:Update(S1,S2)
17:if S1!=null then
18:Select i∈S1 s.t.RTT i is min
19:Forward an Interest packet to path i and
20:PIi=PIi+1
21:else
22:if S2!=null then
23:Select i∈S2 s.t.PIi is min
24:Forward an Interest packet to path i and
25:PIi=PIi+1
26:else
27:Drop Interest packet
28:end if
29:end if
30:end function
31:function ONDATA(DATA PKT,SEQ)
32:PIi=PIi-1
33.end function
in the above pseudo code, the functions of the respective functions are described as follows:
UPDATE: recalculating the number of interfaces in the set;
ONINTEREST: the router node receives the Interest packet and calls the method;
ONDATA: and the router node receives the Data packet and calls the Data packet.
This is explained below with reference to another embodiment.
The method can realize dynamic multi-path forwarding of data packets in the named data network, and particularly, the specific embodiment of the method is research and development based on ndnSIM under a Linux platform.
ndnSIM is the mainstream simulation software of the widely used NDN network, and the network layer entity in the NDN is realized by using C + + class: the method comprises the steps of meeting an Interest packet Table (Pending Interest Table, abbreviated as PIT), a Forwarding Information Table (Forwarding Information Base, abbreviated as FIB), a Content Store (abbreviated as CS), a network and application layer interface, a Forwarding strategy and the like. This design configuration allows each module to be easily changed without affecting the functionality of the other components. Similar to the IPv4 and IPv6 protocol stacks, the ndnSIM can be implemented on any one of the emulated nodes as a separate protocol stack. Besides the core protocol stack, the ndnSIM also comprises a plurality of basic flow controllers, and an extensible interface and a help module are also provided, so that the realization of a simulation scene and the tracking of a simulation process based on the ndnSIM platform are more convenient.
The ndnSIM is a modular emulator, and different modules are implemented in a componentized manner, which provides convenience for layering of the network. The development of the dynamic multipath forwarding algorithm is realized by the following modules which need to be developed: fw (/ root/ndnSIM/ns-3/src/ndnSIM/model/fw/DMFStrack), and dmf.h and dmf.cc files are newly added, and DMFStrack classes are defined in the files, inherit the abstract class of the Strategy and rewrite parts in the Strategy and a forwarding decision method. Define (rewrite) a function:
GetTypeId();
GetLogName();
DMFStrategy();
DoPropagateInterest();
DidSendOutInterest();
WillEraseTimedOutPendingInterest();
WillSatisfyPendingInterest();
variable of definition
Figure GDA0002848157170000131
Figure GDA0002848157170000141
The implementation of the forwarding strategy is mainly in the method, the function of the method is to select a forwarding path for the received Interest packet according to an algorithm and forward the Interest packet to the path.
Parameters are as follows: incomingFace is the interface pointer of the received interest packet
interest is a pointer to a received interest packet
The pitEntry is a PIT entry associated with the interest packet, and the entry may be associated with a plurality of interest packets or one interest packet.
The return value is a pool type, and whether forwarding is successful is judged.
The method is realized by firstly obtaining PIT on the node, then calculating PI value of each interface, namely each path, and then carrying out corresponding routing and forwarding according to the PI value, Threshold and PImax.
boolDMFStrategy::DoPropagateInterest(Ptr<Face>inFace,Ptr<const Interest>interest,Ptr<pit::Entry>pitEntry)
By the method, the Strategy class is rewritten, and the multi-path forwarding Strategy is realized.
The multi-path forwarding strategy provided by the application aims to improve the transmission rate of a network, and is compared with two multi-path forwarding strategies in other related technologies, namely FPF (mainly forwarding according to minimum delay RTT) and GC (mainly performing probability forwarding according to available bandwidth) in order to verify the performance of DMF. Fig. 5 is a topology diagram of a multipath forwarding experiment according to another embodiment of the present application, as shown in fig. 5, where C is a data request end, P1, P2, P3, and P4 are data providing ends, and R1, R2, and R3 are NDN routers, C can obtain data from four data providing ends at the same time. The experiment simulates a download experiment in an NDN environment, and after the experiment is started, the data acquisition rate of C is measured, fig. 6 is a schematic diagram of an experiment result according to another embodiment of the present application, and as shown in fig. 6, it can be seen from the experiment result that the transmission rate of DMF needs to be due to FPF and GC because DMF fully utilizes network bandwidth through real-time dynamic adjustment interface selection, the transmission rate of the network needs to be higher, and GC has a certain random packet loss due to a probabilistic forwarding, so that the transmission rate is reduced; the FPF generates packet loss after the link exceeds the link capacity, so the transmission rate of the network is reduced, and therefore the transmission rate of the DMF is better than the other two multipath forwarding strategies.
Through the above description of the embodiments, those skilled in the art can clearly understand that the method according to the above embodiments can be implemented by software plus a necessary general hardware platform, and certainly can also be implemented by hardware, but the former is a better implementation mode in many cases. Based on such understanding, the technical solutions of the present application may be embodied in the form of a software product, which is stored in a storage medium (e.g., ROM/RAM, magnetic disk, optical disk) and includes instructions for enabling a terminal device (e.g., a mobile phone, a computer, a server, or a network device) to execute the method according to the embodiments of the present application.
Example two
In this embodiment, a selection device of a data forwarding interface is further provided, and the device is used to implement the foregoing embodiments and preferred embodiments, and details are not described again after the description is given. As used below, the term "module" may be a combination of software and/or hardware that implements a predetermined function. Although the means described in the embodiments below are preferably implemented in software, an implementation in hardware, or a combination of software and hardware is also possible and contemplated.
According to another embodiment of the present document, there is also provided a data forwarding interface selection apparatus, including:
an obtaining device, configured to obtain at least two data transmission parameters of one or more forwarding interfaces, where the data transmission parameters include: bandwidth delay product BDP, forwarding interface capacity C, and the number PI of request packets which have been sent by the forwarding interface but have not received responses;
the dividing module is used for dividing the forwarding interfaces to the forwarding interface set according to the size relationship among the data transmission parameters of each forwarding interface;
the sequencing module is used for sequencing the internal forwarding interfaces according to different sequencing rules aiming at different forwarding interface sets;
and the selection module is used for selecting a forwarding interface for the next request packet to be transmitted according to the sequencing result.
By adopting the technical scheme, the multiple forwarding interfaces are divided into different sets according to the current data transmission parameters of the forwarding interfaces, the interfaces are sequenced in the different sets according to different sequencing rules, the forwarding interfaces are selected for the next request packet to be transmitted subsequently, the forwarding interfaces are selected according to the sequence of the sets and the sequencing result in the sets.
Optionally, the dividing performed by the dividing module includes one of:
when the first PI of a first interface is smaller than or equal to the first BDP of the first interface, determining that the first interface belongs to a first interface set;
when a second PI of a second interface is larger than a second BDP of the second interface and smaller than or equal to a second C of the second interface, determining that the second interface belongs to a second interface set;
when the third PI of the third interface is larger than the third C of the third interface, determining that the third interface belongs to a third interface set.
Optionally, the sorting module is further configured to sort, in the first interface set, according to a round trip time RTT of each interface from small to large;
and the interface sorting module is used for sorting the interfaces according to the bandwidth of each interface from large to small in the second interface set.
Optionally, the selecting module is further configured to sequentially select, according to an order that the first interface set is performed before the second interface set, an interface that is ranked in the first order in each interface set as a data forwarding interface of a next data packet.
Optionally, when it is determined that the plurality of forwarding interfaces all belong to the third interface set, discarding the next packet.
Optionally, the ordering rule comprises one of: in an interface set, sequencing according to the round trip time RTT of each interface from small to large; in one interface set, the interfaces are sorted according to the bandwidth of each interface from large to small.
Optionally, before selecting a forwarding interface for a next request packet to be transmitted according to the sorting result, the selection module is further configured to receive the request packet sent by the consumer device, and after querying a data packet corresponding to the request packet in the cache, feed back the data packet to the consumer device without forwarding the request packet; after the data packet corresponding to the request packet is not inquired in the cache, the data item corresponding to the request packet is inquired in the interest packet table PIT to be met, and the request packet is forwarded according to the interface indicated in the data item.
It should be noted that, the above modules may be implemented by software or hardware, and for the latter, the following may be implemented, but not limited to: the modules are all positioned in the same processor; alternatively, the modules are respectively located in different processors in any combination.
EXAMPLE III
Embodiments of the present application also provide a storage medium. Alternatively, in the present embodiment, the storage medium may be configured to store program codes for performing the following steps:
s1, obtaining at least two data transmission parameters of one or more forwarding interfaces, where the data transmission parameters include: bandwidth delay product BDP, forwarding interface capacity C, and the number PI of request packets which have been sent by the forwarding interface but have not received responses;
s2, dividing the forwarding interface to a forwarding interface set according to the magnitude relation among the data transmission parameters of each forwarding interface;
s3, sorting the internal forwarding interfaces according to different sorting rules aiming at different forwarding interface sets;
and S4, selecting a forwarding interface for the next request packet to be transmitted according to the sorting result.
Optionally, in this embodiment, the storage medium may include, but is not limited to: a U-disk, a Read-Only Memory (ROM), a Random Access Memory (RAM), a removable hard disk, a magnetic or optical disk, and other various media capable of storing program codes.
Embodiments of the present application further provide an electronic device comprising a memory having a computer program stored therein and a processor configured to execute the computer program to perform the steps of any of the above method embodiments.
Optionally, the electronic apparatus may further include a transmission device and an input/output device, wherein the transmission device is connected to the processor, and the input/output device is connected to the processor.
Optionally, in this embodiment, the processor may be configured to execute the following steps by a computer program:
s1, obtaining at least two data transmission parameters of one or more forwarding interfaces, where the data transmission parameters include: bandwidth delay product BDP, forwarding interface capacity C, and the number PI of request packets which have been sent by the forwarding interface but have not received responses;
s2, dividing the forwarding interface to a forwarding interface set according to the magnitude relation among the data transmission parameters of each forwarding interface;
s3, sorting the internal forwarding interfaces according to different sorting rules aiming at different forwarding interface sets;
and S4, selecting a forwarding interface for the next request packet to be transmitted according to the sorting result.
Optionally, the specific examples in this embodiment may refer to the examples described in the above embodiments and optional implementation manners, and this embodiment is not described herein again.
Optionally, the specific examples in this embodiment may refer to the examples described in the above embodiments and optional implementation manners, and this embodiment is not described herein again.
It will be apparent to those skilled in the art that the modules or steps of the present application described above may be implemented by a general purpose computing device, they may be centralized on a single computing device or distributed across a network of multiple computing devices, and alternatively, they may be implemented by program code executable by a computing device, such that they may be stored in a storage device and executed by a computing device, and in some cases, the steps shown or described may be performed in an order different than that described herein, or they may be separately fabricated into individual integrated circuit modules, or multiple ones of them may be fabricated into a single integrated circuit module. Thus, the present application is not limited to any specific combination of hardware and software.
The above description is only a preferred embodiment of the present application and is not intended to limit the present application, and various modifications and changes may be made by those skilled in the art. Any modification, equivalent replacement, improvement and the like made within the spirit and principle of the present application shall be included in the protection scope of the present application.

Claims (8)

1. A method for selecting a data forwarding interface, comprising:
obtaining at least two data transmission parameters of one or more forwarding interfaces, wherein the data transmission parameters include: bandwidth delay product BDP, forwarding interface capacity C, and the number PI of request packets which have been sent by the forwarding interface but have not received responses;
dividing the forwarding interfaces to a forwarding interface set according to the magnitude relation among a plurality of data transmission parameters of each forwarding interface;
sorting the internal forwarding interfaces according to different sorting rules aiming at different forwarding interface sets;
selecting a forwarding interface for the next request packet to be transmitted according to the sorting result;
wherein, the dividing the forwarding interface to the set of forwarding interfaces according to the magnitude relationship between the multiple data transmission parameters of each forwarding interface includes one of: when the first PI of a first interface is smaller than or equal to the first BDP of the first interface, determining that the first interface belongs to a first interface set; when a second PI of a second interface is larger than a second BDP of the second interface and smaller than or equal to a second C of the second interface, determining that the second interface belongs to a second interface set; when the third PI of a third interface is larger than the third C of the third interface, determining that the third interface belongs to a third interface set;
the sorting of the internal forwarding interfaces according to different sorting rules for different forwarding interface sets includes: in the first interface set, sequencing according to the round-trip delay of each interface; and in the second interface set, sequencing according to the bandwidth of each interface.
2. The method of claim 1, wherein ordering the internal forwarding interfaces according to different ordering rules for different sets of forwarding interfaces comprises:
in the first interface set, sequencing according to the round trip time RTT of each interface from small to large;
and in the second interface set, sorting according to the bandwidth of each interface from large to small.
3. The method according to claim 1 or 2, wherein selecting a forwarding interface for the next request packet to be transmitted according to the sorting result comprises:
and sequentially selecting the interface in the first interface set and the interface in the second interface set as the data forwarding interface of the next data packet according to the sequence of the first interface set and the second interface set.
4. The method of claim 1, wherein upon determining that the plurality of forwarding interfaces all belong to a third set of interfaces, discarding a next packet.
5. The method of claim 1, wherein the request packet sent by the consumer device is received before selecting a forwarding interface for a next request packet to be transmitted according to the sorting result, the method further comprising one of:
after the data packet corresponding to the request packet is inquired in the cache, the data packet is fed back to the consumer equipment, and the request packet is not forwarded;
after the data packet corresponding to the request packet is not inquired in the cache, the data item corresponding to the request packet is inquired in the interest packet table PIT to be met, and the request packet is forwarded according to the interface indicated in the data item.
6. A device for selecting a data forwarding interface, comprising:
an obtaining device, configured to obtain at least two data transmission parameters of one or more forwarding interfaces, where the data transmission parameters include: bandwidth delay product BDP, forwarding interface capacity C, and the number PI of request packets which have been sent by the forwarding interface but have not received responses;
the dividing module is used for dividing the forwarding interfaces to the forwarding interface set according to the size relationship among the data transmission parameters of each forwarding interface;
the sequencing module is used for sequencing the internal forwarding interfaces according to different sequencing rules aiming at different forwarding interface sets;
the selection module is used for selecting a forwarding interface for the next request packet to be transmitted according to the sequencing result;
wherein, the dividing mode executed by the dividing module comprises one of the following modes: when the first PI of a first interface is smaller than or equal to the first BDP of the first interface, determining that the first interface belongs to a first interface set; when a second PI of a second interface is larger than a second BDP of the second interface and smaller than or equal to a second C of the second interface, determining that the second interface belongs to a second interface set; when the third PI of a third interface is larger than the third C of the third interface, determining that the third interface belongs to a third interface set;
the sorting module is further configured to sort, in the first interface set, according to the round trip time RTT of each interface; and the second interface set is used for sorting according to the bandwidth of each interface.
7. A storage medium, in which a computer program is stored, wherein the computer program is arranged to perform the method of any of claims 1 to 5 when executed.
8. An electronic device comprising a memory and a processor, wherein the memory has stored therein a computer program, and wherein the processor is arranged to execute the computer program to perform the method of any of claims 1 to 5.
CN201810989887.XA 2018-08-28 2018-08-28 Method and device for selecting data forwarding interface Active CN109150708B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201810989887.XA CN109150708B (en) 2018-08-28 2018-08-28 Method and device for selecting data forwarding interface

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201810989887.XA CN109150708B (en) 2018-08-28 2018-08-28 Method and device for selecting data forwarding interface

Publications (2)

Publication Number Publication Date
CN109150708A CN109150708A (en) 2019-01-04
CN109150708B true CN109150708B (en) 2021-04-27

Family

ID=64828780

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201810989887.XA Active CN109150708B (en) 2018-08-28 2018-08-28 Method and device for selecting data forwarding interface

Country Status (1)

Country Link
CN (1) CN109150708B (en)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111314223A (en) * 2020-02-25 2020-06-19 北京工业大学 Routing interface ranking-based forwarding method in NDN (named data networking)
CN112653634A (en) * 2020-12-10 2021-04-13 苏州浪潮智能科技有限公司 Flow control method, device, equipment and readable storage medium

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103841018A (en) * 2012-11-26 2014-06-04 华为技术有限公司 Content centric network multiport forwarding method and router
CN103916329A (en) * 2014-03-21 2014-07-09 中国科学院计算技术研究所 Named data network transmission control method and system
CN104301305A (en) * 2014-09-17 2015-01-21 北京大学深圳研究生院 Interest packet forwarding method and terminal in information center network
CN105245448A (en) * 2015-10-08 2016-01-13 中南民族大学 Multi-service and multi-path routing optimization method in named data network
CN106534360A (en) * 2016-12-13 2017-03-22 重庆大学 Content centric network routing method based on software definition
CN106911574A (en) * 2017-02-26 2017-06-30 中南民族大学 Name data network multiple constraint routing algorithm based on population

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20180006937A1 (en) * 2016-06-30 2018-01-04 Fujitsu Limited Packet forwarding in information centric networking networks

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103841018A (en) * 2012-11-26 2014-06-04 华为技术有限公司 Content centric network multiport forwarding method and router
CN103916329A (en) * 2014-03-21 2014-07-09 中国科学院计算技术研究所 Named data network transmission control method and system
CN104301305A (en) * 2014-09-17 2015-01-21 北京大学深圳研究生院 Interest packet forwarding method and terminal in information center network
CN105245448A (en) * 2015-10-08 2016-01-13 中南民族大学 Multi-service and multi-path routing optimization method in named data network
CN106534360A (en) * 2016-12-13 2017-03-22 重庆大学 Content centric network routing method based on software definition
CN106911574A (en) * 2017-02-26 2017-06-30 中南民族大学 Name data network multiple constraint routing algorithm based on population

Also Published As

Publication number Publication date
CN109150708A (en) 2019-01-04

Similar Documents

Publication Publication Date Title
US11700322B2 (en) Service process control method and network device
EP3709573A1 (en) Satisfying service level agreement metrics for unknown applications
US8279753B2 (en) Efficient determination of fast routes when voluminous data is to be sent from a single node to many destination nodes via other intermediate nodes
US11477106B2 (en) Data packet sending method and apparatus in IPV6 network
US20160323193A1 (en) Service Routing Method, Device, and System
US11496393B2 (en) Method and apparatus for forwarding packet based on integrated flow table
Xu et al. Real-time update with joint optimization of route selection and update scheduling for SDNs
CN106713182B (en) Method and device for processing flow table
US9973400B2 (en) Network flow information collection method and apparatus
CN101789949B (en) Method and router equipment for realizing load sharing
CN106685862B (en) A kind of packet segment processing method and processing device
CN109150708B (en) Method and device for selecting data forwarding interface
CN104601467A (en) Method and device for sending messages
CN111355674A (en) Routing message processing method and device, storage medium and electronic device
CN103746768B (en) A kind of recognition methods of packet and equipment
EP2829027B1 (en) Routing by selecting a routing table from a plurality of routing tables
CN107231318B (en) Method, equipment and device for dynamic switching control based on real-time network performance
CN116582493A (en) Data center network link selection method and device and electronic equipment
Govindan et al. Optimal server selection policy for improved network efficiency in smart phones
CN107147577A (en) A kind of data forwarding method and system based on software defined network SDN
Ahsan et al. Performace evaluation of TCP cubic, compound TCP and NewReno under Windows 20H1, via 802.11 n Link to LTE Core Network
Kurihara et al. List interest: Packing interests for reduction of router workload in ccn 1.0
US8774195B2 (en) Using probabilistic values for routing data packets on a data center network
Sathyanarayana et al. Design, Implementation, and Evaluation of Host-based In-band Network Telemetry for TCP
CN117176647A (en) Service function chain construction method with QoS guarantee

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