WO2005067227A1 - 負荷分散方法、ノード及び制御プログラム - Google Patents

負荷分散方法、ノード及び制御プログラム Download PDF

Info

Publication number
WO2005067227A1
WO2005067227A1 PCT/JP2005/000139 JP2005000139W WO2005067227A1 WO 2005067227 A1 WO2005067227 A1 WO 2005067227A1 JP 2005000139 W JP2005000139 W JP 2005000139W WO 2005067227 A1 WO2005067227 A1 WO 2005067227A1
Authority
WO
WIPO (PCT)
Prior art keywords
packet
path
node
transmission
route
Prior art date
Application number
PCT/JP2005/000139
Other languages
English (en)
French (fr)
Inventor
Tsuneo Nakata
Yuusuke Noguchi
Original Assignee
Nec Corporation
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 Nec Corporation filed Critical Nec Corporation
Priority to JP2005516904A priority Critical patent/JP4396859B2/ja
Priority to US10/526,958 priority patent/US8098648B2/en
Priority to CN2005800021702A priority patent/CN1910870B/zh
Priority to EP20050709229 priority patent/EP1705845B1/en
Publication of WO2005067227A1 publication Critical patent/WO2005067227A1/ja

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • H04L47/12Avoiding congestion; Recovering from congestion
    • H04L47/122Avoiding congestion; Recovering from congestion by diverting traffic away from congested entities
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/54Store-and-forward switching systems 
    • H04L12/56Packet switching systems
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/22Alternate routing
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/30Routing of multiclass traffic
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • H04L47/28Flow control; Congestion control in relation to timing considerations
    • H04L47/283Flow control; Congestion control in relation to timing considerations in response to processing delays, e.g. caused by jitter or round trip time [RTT]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/08Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters
    • H04L43/0852Delays
    • H04L43/0858One way delays
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/08Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters
    • H04L43/0852Delays
    • H04L43/0864Round trip delays
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/08Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters
    • H04L43/0852Delays
    • H04L43/087Jitter
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/08Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters
    • H04L43/0876Network utilisation, e.g. volume of load or congestion level
    • H04L43/0882Utilisation of link capacity
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/08Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters
    • H04L43/0876Network utilisation, e.g. volume of load or congestion level
    • H04L43/0894Packet rate

Definitions

  • the present invention relates to a communication method between two nodes that can use a plurality of communication paths, and more particularly, to a technique for load sharing between paths using transmission nodes.
  • the transmitting node distributes and inputs traffic to each path, and the receiving side reintegrates the traffic from each path to form a single path.
  • This mechanism is a technology that combines paths to form one logical path.
  • a typical example is Inverse Multiplexing, which is used to obtain a logical broadband line from multiple low-speed links.
  • Examples of application to data communication include multiplexing of ATM lines and Multilink PPP, which is a multiplexing protocol for PPP links.
  • a weighted round robin that controls the use frequency of each route according to the speed is known, and a router corresponding to a technology that combines routes into one logical route. It is implemented in products. In addition, products such as Cisco have implemented a method of hashing input packets to determine an output path and achieve optimum load distribution. Such information is described in public documents of each company (for example, Non-Patent Document 2).
  • Patent Document 1 Patent Document 2, Patent Document 3, Patent Document 4, Patent Document 5.
  • Patent document 1 JP-A-2000-49862
  • Patent Document 2 Japanese Patent Application Laid-Open No. 2001-308917
  • Patent Document 3 Japanese Patent Application Laid-Open No. 2001-333100
  • Patent Document 4 JP-A-2002-176441
  • Patent Document 5 JP-A-58-27449
  • Patent Document 6 JP-A-2000-216815
  • Non-Noon Document 1 Striping Withm the Network subsystem, IEEE Network,
  • Non-Patent Document 2 Cisco Systems, “Load Balancing with Cisco Express Forwarding,” isco Application Note, Jan. 1998
  • Patent Document 3 "Adaptive Inverse Multiplexing for Wide-Area Wireless Networks," Snoeren et al, Proceedings of IEEE GlobeCom, Dec. 1999
  • a transmission node refers to the speed or delay of each path as a selection criterion when selecting a transmission path.
  • measurement errors in the path state tend to accumulate for paths that include wireless links that fluctuate dynamically, so that the time when the packet to be transmitted arrives at the receiving node ⁇ the exact time when the reception is completed It was difficult to predict.
  • a route is selected based on the prediction result, there is a problem that a route whose speed is actually significantly reduced is selected and multiplexing efficiency is reduced.
  • 700-2 and 700-3 are data packets to be transmitted.
  • the transmission history of the packet at the transmitting node (solid line), the reception history of the packet at the receiving node (solid line), and the arrival and reception of the packet have been completed.
  • the prediction of the time (dotted line) is shown on the time axis.
  • transmission of a data packet 700-1 is started from the transmitting node at time T1, and transmission is completed at time T2. Then, the receiving node starts receiving the packet 700-1 at time T3 and completes the reception at time T5.
  • transmission of data packet 700-2 is started from the transmitting node side at time T4, and transmission is completed at time T7. Then, on the receiving node side, the reception of the data packet 700-2 is started at time T6 due to a decrease in the communication speed, and the reception is completed at time T11.
  • transmission of data packet 700-3 is started at time T8 from the transmitting node side, and
  • the arrival time and the reception completion time of a packet are predicted based on information on a path state such as a transmission speed issued from the receiving node when the reception of the data packet 700-1 is completed.
  • the transmitting node receives the information on the path state from the receiving node at time TX.
  • the transmitting node uses the information on the path status received at time TX when estimating the arrival time and reception completion time of the data packet 700-3.
  • the transmission delay II and the like were known, and the time T10 at which the transmission delay II was lost at the transmission time T8 of the data packet 700-3 was predicted as the arrival time of the data packet 700-3.
  • the actual arrival time of the data packet 700-3 is time T12, and there is a time ID error from the predicted arrival time T10.
  • the problem is that the route state at the time of prediction can be obtained in real time. Can be resolved if it can be reflected at the time of transmission, but in reality it is impossible to enter and exit the current route state in the real time.
  • the present invention has been made in view of the above-mentioned problems, and an object of the present invention is to reflect the route status obtained from the receiving side on data transmitted in the past, thereby realizing actual data. It is an object of the present invention to provide a technology capable of predicting an arrival time or a reception completion time close to an arrival time or a reception completion time of a user.
  • an object of the present invention is to, when transferring data between two nodes capable of selecting a plurality of paths, reflect the path state obtained from the receiving side in data transmitted in the past, thereby realizing the actual data transmission.
  • An object of the present invention is to provide a technique which is excellent in multiplexing efficiency by predicting an arrival time or a reception completion time close to an arrival time or a reception completion time and performing route selection based on the prediction.
  • an object of the present invention is to perform data transfer between two nodes capable of selecting a plurality of paths, the performance of each path dynamically changes, and there is a round trip delay that is not negligible compared to its time constant. It is an object of the present invention to provide a technology that enables efficient use of route resources even in such cases.
  • a first invention for solving the above problems is a load distribution method
  • the path state information of each selectable path and the time when the path state information becomes valid or the identification of the transmitted packet Path selection or update of the selection priority based on the information and the transmission history after the time when the path state information becomes valid or the transmission history of the packet specified by the identification information of the transmitted packet. It is characterized by performing.
  • a second invention for solving the above problems is a load distribution method
  • the route status of each selectable route is monitored for each packet input at the transmitting node, and the route status information of the route status and the route status information are monitored. Storing the time or the identification information of the packet at which Based on the path state information and the transmission history of the packet after the time when the path state information becomes valid or the transmission history of the packet after transmission of the packet specified by the identification information of the transmitted packet, Estimating the expected time of arrival of
  • a third invention for solving the above-mentioned problems is characterized in that, in the above-mentioned first or second invention, the route state information includes a delay of the route.
  • a fourth invention for solving the above-mentioned problem is characterized in any one of the first to third inventions, wherein the path state information includes a communication speed of the path.
  • a fifth invention for solving the above-mentioned problems is characterized in that, in any of the first to fourth inventions, the route state information includes a load on the route.
  • a sixth invention for solving the above-mentioned problems is characterized in that in any of the first to fifth inventions described above, when the route state information of each route is updated when the route is selected or the selection priority is updated.
  • a seventh invention for solving the above-mentioned problem is the invention according to any one of the sixth inventions described above, wherein, when correcting the transmission cost calculation result of each route, before the first transmitted packet at which the latest route state information becomes valid. Is discarded.
  • An eighth invention for solving the above-mentioned problems is characterized in that, in any one of the above-mentioned first to seventh inventions, as a path for transmitting a packet, a path having the earliest estimated value of the reception completion time at the receiving node is used. It is characterized by selecting.
  • a ninth invention for solving the above-mentioned problems is a method according to any one of the first to eighth inventions, wherein the estimation of the amount of data that can be completed by the receiving node by a specific time is used as a packet transmission path. It is characterized in that the route having the largest value is selected.
  • a tenth invention for solving the above-mentioned problems is the invention according to any of the first to ninth inventions.
  • An eleventh invention for solving the above-mentioned problems is characterized in any one of the above-mentioned tenth inventions, wherein a criterion of the data transmission interruption is that an estimated reception completion time is a specific value or more.
  • a twelfth invention for solving the above-mentioned problems is characterized in that, in any one of the first to eleventh inventions, the determination of path selection or transmission interruption is performed by a different policy for each attribute of transmission data.
  • a thirteenth invention for solving the above-mentioned problems is the invention according to any one of the first to twelfth inventions, wherein the communication interface corresponding to the destination address of the received packet is a communication interface address and the communication interface. If the received packet has information specifying a source address or a communication interface, the source address or the communication interface is selected. Select the corresponding communication interface, the selected communication interface, and if the received packet does not include the source address or the information of the communication interface, select any communication interface of the selected communication interface. Receive the selected communication interface It is characterized by transmitting packets.
  • a fourteenth invention for solving the above-mentioned problems is a node capable of selecting a plurality of paths for transmitting a packet, wherein for each input packet, path state information of each selectable path and the previous The time at which the path state information becomes valid or the identification information of the transmitted packet, and the transmission history after the time at which the path state information becomes valid or the transmission history of the packet specified by the identification information of the transmitted packet. And means for selecting a route or updating the selection priority based on the above.
  • a fifteenth invention for solving the above problem is a node capable of selecting a plurality of routes for transmitting packets
  • the route status of each selectable route is monitored, and the route status information of the route status and the time at which the route status information becomes valid or packet identification information are monitored.
  • Monitoring means For each packet input at the transmitting node, the route status of each selectable route is monitored, and the route status information of the route status and the time at which the route status information becomes valid or packet identification information are monitored.
  • an estimated arrival time of a packet in each path is estimated, and based on the estimated estimated arrival time, A scheduling means for selecting or updating the selection priority;
  • a sixteenth invention for solving the above-mentioned problems is characterized in that, in the fourteenth invention or the fifteenth invention, said path state information includes a path delay.
  • a seventeenth invention for solving the above-mentioned problems is characterized in that, in any one of the fourteenth to sixteenth inventions, said route state information includes a communication speed of the route.
  • An eighteenth invention for solving the above-mentioned problems is characterized in that, in any one of the fourteenth to seventeenth inventions, said path state information includes a path load.
  • a nineteenth invention for solving the above-mentioned problems is characterized in that, in any one of the fourteenth invention to the eighteenth invention, said scheduling means is adapted to select a path or update a selection priority in a path state of each path. When the information is updated, the transmission cost calculation results for the packets transmitted before the update are modified.
  • the scheduling means is configured such that when the transmission cost calculation result of each route is corrected, the first one in which the latest route state information becomes effective is used. It is characterized in that the history before the transmitted packet is discarded.
  • the scheduling means sets a reception completion time at a reception-side node as a path for transmitting a packet. It is characterized in that the route with the fastest estimated value is selected.
  • the scheduling means receives a packet by a receiving node by a specific time as a path for transmitting a packet.
  • the feature is to select the route with the largest estimated amount of data that can be completed.
  • the scheduling means responds to the estimated current path state for each path. Data transmission is interrupted.
  • a twenty-fourth invention for solving the above-mentioned problems is characterized in that, in the above-mentioned twenty-third invention, a criterion for interruption of data transmission is that an estimated reception completion time is a specific value or more.
  • the scheduling means makes a decision on path selection or transmission interruption for each attribute of transmission data. It is performed according to the policy.
  • the address of the communication interface is associated with the destination address arriving via the communication interface. And a communication interface corresponding to a destination address of a packet to be transmitted is selected from the table. If the packet to be transmitted has information for specifying a source address or a communication interface, the source address or the communication interface is selected. Routing means for selecting a communication interface corresponding to the communication interface from the selected communication interfaces, and transmitting the packet to be transmitted to the selected communication interface.
  • a twenty-seventh invention for solving the above-mentioned problem is a node control program capable of selecting a plurality of routes for transmitting packets, wherein the program comprises:
  • path state information of each selectable path For each input packet, path state information of each selectable path, the time at which the path state information becomes valid or identification information of a transmitted packet, and the transmission history after the time at which the path state information becomes valid Alternatively, it is characterized by functioning as a means for selecting a route or updating a selection priority based on a transmission history after transmission of a packet specified by identification information of a transmitted packet.
  • a twenty-eighth invention for solving the above-mentioned problem is a node control program capable of selecting a plurality of routes for transmitting packets, wherein the program includes a node,
  • the route status of each selectable route is monitored, and the route status information of the route status and the time at which the route status information becomes valid or packet identification information are monitored.
  • Monitoring means For each packet input at the transmitting node, the route status of each selectable route is monitored, and the route status information of the route status and the time at which the route status information becomes valid or packet identification information are monitored.
  • a twenty-ninth invention for solving the above-mentioned problems is characterized in that, in the twenty-seventh invention or the twenty-eighth invention, the path state information includes a path delay.
  • a thirtieth invention for solving the above-mentioned problems is characterized in that, in any one of the twenty-seventh to twenty-ninth inventions, said route state information includes a communication speed of the route.
  • a thirty-first invention for solving the above-mentioned problems is characterized in any one of the twenty-seventh to thirtieth inventions, wherein the path state information includes a path load.
  • the control program causes the scheduling means to select a route or update a selection priority.
  • the scheduling means causes the scheduling means to select a route or update a selection priority.
  • control program causes the scheduling means to update the transmission cost calculation result of each path so that the latest path state information is valid.
  • the feature is to function to discard the history before the first transmitted packet.
  • the control program sets the scheduling means as a path for transmitting a packet at a receiving node. It is characterized in that it functions so as to select the route having the earliest estimated value of the reception completion time.
  • control program includes a step of: It is characterized in that it functions so as to select a route with the maximum estimated value of the data amount that can be received by a specific time.
  • the control program estimates the scheduling means for each path. It is characterized in that it functions to interrupt data transmission according to the current route state.
  • a thirty-seventh invention for solving the above-mentioned problems is characterized in that, in the above-mentioned thirty-fifth invention, said data transmission interruption criterion is such that an estimated reception completion time is a specific value or more.
  • control program includes: It is characterized in that it is made to function according to different policies for each attribute.
  • a thirty-ninth invention for solving the above-mentioned problems is characterized in that, in any one of the twenty-seventh to thirty-eighth inventions, the control program includes a communication interface corresponding to a destination address of a packet to be transmitted. If the address of the interface and the destination address arriving via the communication interface are associated with each other, select the table, and if the packet to be transmitted has information specifying the source address or the communication interface, A communication interface corresponding to the source address or the communication interface is selected from the selected communication interface, and the communication interface is made to function as routing means for transmitting the packet to be transmitted to the selected communication interface.
  • a fortieth invention for solving the above problem is a transmission packet time estimation method for estimating the arrival time or reception completion time of a transmission packet
  • a forty-first invention for solving the above problems is a node,
  • a forty-second invention for solving the above-mentioned problems is a control program for a node that transmits a packet, wherein the control program includes:
  • the present invention stores the transmission history of transmission data (packets) when transmitting data (packets).
  • the transmission history for example, an identifier for identifying transmission data (packet), a transmission start time, and the like are described.
  • state information for example, speed and packet delay
  • the path state information includes information for identifying the latest data (packet) to which the path state information is applied, such as the data (packet) identifier described above.
  • the route state information is received, and the information (for example, an identifier) for identifying the data (packet) included in the route state is used to determine whether the transmitted route state is valid.
  • the information for example, an identifier
  • the reception completion time and the like are predicted by applying the state of the received path, and further based on the prediction and the state information of the received path, Predict the arrival time or reception completion time of the data to be transmitted.
  • the route selection based on the predicted data arrival time or reception completion time. Then, the most appropriate route, for example, the route expected to arrive at the earliest time is selected.
  • the present invention also applies the path state information obtained from the receiving side to data (packets) transmitted in the past when this information is valid, and predicts the data (packets) to transmit the result. Since the data arrival time or the reception completion time is predicted by also reflecting the data, it is possible to perform prediction with higher accuracy than before. This is because, in the prior art, the route information obtained from the receiving side is applied only to the data (packet) to be transmitted to predict the arrival time or the reception completion time.
  • the state information of the path obtained from the receiving side is applied to data transmitted in the past in which this information becomes valid. Since the result is also reflected in the prediction of the data to be transmitted, the arrival time or reception completion time of the data is predicted, and the route is selected based on this prediction. By selecting an appropriate path that does not perform the operation, it is possible to avoid problems such as a decrease in multiplexing efficiency.
  • the performance of each path dynamically changes and there is a round trip delay that is not negligible compared to its time constant. Also enables efficient utilization of path resources.
  • FIG. 1 is a diagram showing a configuration of an inter-node route according to an embodiment of the present invention.
  • FIG. 2 is a diagram showing a configuration of a transmitting node.
  • FIG. 3 is a diagram for explaining the timing of packet processing at a transmitting node and a receiving node in the embodiment.
  • FIG. 4 is an operation flowchart of a scheduling unit in the embodiment.
  • FIG. 5 is a diagram for explaining packet processing timing in a transmitting node and a receiving node in another embodiment.
  • FIG. 6 is an operation flowchart of a scheduling unit in another embodiment.
  • FIG. 7 is an arrival time at a transmitting node and a receiving node in the embodiment. It is a figure for explaining prediction of time or reception completion time.
  • FIG. 8 is a diagram for explaining a conventional technique.
  • FIG. 9 shows an example of a configuration in which a communication interface has an individual IP address.
  • FIG. 10 is a diagram showing an example of an internal configuration of a transmitting node 100-2 in the system of FIG.
  • FIG. 11 is a diagram showing a configuration of an IP notifying processing unit 1318.
  • FIG. 12 is a diagram showing an example of a path control table 1321.
  • FIG. 13 is a diagram showing an example of an IF address management table 1322.
  • FIG. 14 is a diagram showing an example of a path communication interface correspondence table 1330 stored in a memory unit 315-2.
  • FIG. 15 is a diagram showing a configuration of transmission IP packet generation data 1510.
  • FIG. 16 is a diagram showing a configuration of an outgoing IP packet 1610.
  • FIG. 17 is a flowchart of transmission IF determination / transmission IF determination by transmission IF determination / transmission processing section 1320.
  • FIG. 18 is a diagram showing other transmission IP packet generation data.
  • FIG. 19 is a diagram showing another outgoing IP packet.
  • FIG. 20 is a flowchart of another transmission IF determination by transmission IF determination / transmission processing section 1320.
  • FIG. 21 is a diagram showing an example of an entry of a routing control table 1321.
  • FIG. 1 shows a configuration example of the present embodiment.
  • a transmitting node 100 and a receiving node 101 that perform multiplexing.
  • the number of force paths which shows the case of three paths in FIG. 1 can take any value of 2 or more.
  • all routes between the transmitting and receiving nodes may be wireless, but generally include the wired network 102.
  • each wireless link generally belongs to a different wireless network 300.
  • routes 202-1 and 202-2 are cellular networks 300-1
  • wireless network 300-2 is a wireless LAN.
  • the transmitting node 100 distributes the traffic received from the data generating node 10 to each path based on the state information, and the receiving node 101 retransmits the traffic from the transmitting node 100 via each path. Combine and send to destination node 11.
  • FIG. 2 shows the internal configuration of transmitting node 100.
  • the traffic transmitted from the data generation node 10 to the destination node 11 is a communication interface.
  • the data is input from the ace 310-1, passed through the queuing unit 312 and the scheduling unit 313, and transmitted from the transmission side communication interface 310-2 or 310-3 of the inverse multiplexing link. It should be noted that since a plurality of routes may share the physical link closest to the transmitting node, the routes configuring the inverse multiplexing link do not always correspond one-to-one with the communication interface.
  • Scheduling section 313 extracts input data from queue section 312 and sends out the data to a specific path.
  • the selection of the path used for transferring the extracted data is performed with reference to the path state managed by the path state monitoring unit 314.
  • the path state monitoring unit 314 intermittently receives the state information of each path via the receiving node 101 and the information (hereinafter, referred to as a report) identifying the transmission packet for which the update is valid via the communication interface 310-2 or 310-3. And updates the route state information stored in the memory unit 315 based on the received information.
  • the path state information indicates general information that is an index of communication performance.
  • the speed of the route and the packet delay are used.
  • the path state information is valid, it means when the path state information is updated on the transmitting node side.
  • transmitting node 100 inserts an identifier and transmission time into each packet to receiving node 101 and transfers the packet.
  • the receiving node measures the packet delay by comparing the transmission time entered by the transmitting node with the time it received.
  • the transmitting node periodically transmits a packet for measurement, and the receiving node can estimate the speed from the variation in the arrival time. Details of the estimation method are introduced in, for example, the document "Dovrolis, Ramanathan, and Moore," What DoPacket Dispersion Techniques Measures ?, "IEEE INFOCOM 2001".
  • the sending node sends two packets simultaneously. Then, the transmitting side estimates the link speed from the arrival time difference between these two packets. It is the transmission delay that widens the packet arrival interval. Since the transmission delay is related to the link speed, the speed can be estimated from the arrival interval.
  • Receiving node 101 periodically transmits these measurement values to transmitting node 100 as path state information. Also, the identifier of the latest packet received up to that point is transmitted at the same time as the identification information of the packet for which the status information to be transmitted is valid. This information is received at the sending node as the report described above.
  • the above method is an example, and the practicability of the present invention does not depend on the path state information and the method of determining and transmitting the packet in which the path state information is valid.
  • the scheduling unit 313 refers to the current routing information for each packet to be transferred next and the transmission history of the packet for which the information is valid for each transmission route and the transmission history of the packet at the time of transmission. Predict delay.
  • the transmission history is stored in the memory unit 315.
  • the scheduling unit 313 selects the route having the smallest predicted arrival delay as the transmission route of the packet to be transferred next, and after transferring the packet to the selected route, stores the transfer time in the transmission history in the memory unit 315.
  • FIG. 3 shows an example of an arrival delay estimating method for each route operated by the scheduling unit 313.
  • reference numerals 400-1, 400-2, and 400-3 denote data packets, and the transmission history and prediction at the transmitting node 100 and the reception history and prediction at the receiving node 101 are shown on the time axis.
  • the transmission of the data packet 400-1 is started at the transmitting node at time T1, and the transmission is completed at time T2.
  • the reception of the same packet 400-1 is started at the receiving node at time T3, and completed at time T4.
  • the difference II between T1 and T3 is the transmission delay.
  • the difference 12 between T4 and T2 is the total delay obtained by adding the packet delay caused by the transmission delay II and the speed difference between the transmission interface and the transfer path.
  • packet 400-3 is to be transmitted at the current time of the TP on the time axis.
  • the route status information is updated by receiving the report result notification between T5 and TP, and the packets for which this route status information becomes valid are from 400-1. Therefore, based on the transmission history of the packets (400-1, 400-2) for which the path state information is valid, the reception completion time of the packet 400-3 in consideration of the packet 400-1 and the packet 400-2 is determined. Make an estimate. [0086] Then, the reception start time and the completion time of the packet 400-2 transmitted after the packet 400- at the receiving node 101 are estimated from the speed and the transmission delay included in the currently received path state information. .
  • the estimated reception start time is T5 in Fig. 3 and the reception completion time is $ 7.
  • the packet 400-3 that has started transmission to the TP should start receiving at time T6. It is estimated that the reception of packet 400-3 has not been completed, so the estimated reception start time of packet 400-3 is T7, which is estimated that reception of packet 400-2 has been completed, and the estimated reception completion time of packet 400-3 is the path state information. Is T8, which is equal to the packet variance estimated from the path speed included in.
  • the reception completion time of the packet 400-3 is estimated for each path, and the packet 400-3 is transmitted to the path having the earliest time.
  • the path state information used for estimating the arrival time of the receiving side at the time of the TP in Fig. 3 has been updated between T5 and the TP by receiving the report result notification. Then, the arrival time estimation when transmitting the packet 400-2 is performed based on the older route state information in the TP. Assuming that the old state information is information A and the new information updated between T5 and TP is information B, if the delays and path speeds included in information A and information B differ due to link state fluctuations, information A The arrival time prediction based on the information must have been different from the arrival time prediction based on the information B shown in FIG. Therefore, the prediction of the arrival time of the packets 400-1 and 400-2 shown in FIG. 3 reflects the modification of the result obtained from the information B. Once the route status information is updated, the transmission history before the packet for which the update is valid becomes unnecessary, and is discarded.
  • data packets 500-1, 500-2, and 500-3 are data packets to be transmitted.
  • the transmission history (solid line) of the packet at the transmitting node and the actual packet reception at the receiving node are shown.
  • the histories (solid lines) are shown on the time axis.
  • the prediction of the arrival and reception completion times of the packet (dotted line) is also shown on the time axis.
  • the curve shown at the top of FIG. 7 shows the speed change of the transmission path. In Fig. 7, the transmission speed decreases over time. It indicates that it is broken.
  • transmission of the data packet 500-1 is started at time T1 from the transmitting node, which is the actual transmission and reception of packets, and is completed at time T2. Then, the receiving node starts receiving the packet 500-1 at time T3, and completes the reception at time T5.
  • transmission of data packet 500-2 is started at time T4 from the transmitting node side, and transmission is completed at time T8. Then, on the receiving node side, the reception of the data packet 500-2 is started at time T7 due to a decrease in the communication speed, and the reception is completed at time T13.
  • the transmission node starts transmitting the data packet 500-3 at time T9,
  • the transmission of the data packet 500-1 is started at time T1, along with the transmission time of the data packet 500-1 and the information of the packet identifier, at the transmitting node, and the transmission is completed at time T2. .
  • the transmitting node stores the transmission time and packet identifier of the data packet 500-1 as the transmission history.
  • the transmitting node starts transmitting the data packet 500-2 at time T4 together with the transmission time of the data packet 500-2 and the information of the packet identifier, and completes the transmission at time T8. I have. At this time, the transmitting node stores the transmission time and the packet identifier of the data packet 500-2 as the transmission history, as described above.
  • reception of data packet 500-1 is started at time T3, and is completed at time T5.
  • the receiving node transmits information such as the identifier of the data packet 500-1, the reception completion time and the communication speed to the transmitting node as a report.
  • the transmitting node determines the data packet 500-3 based on the transmission history after time T1.
  • the arrival time and the reception completion time are predicted.
  • the target data packets are data packet 500-1 and data packet 500-2.
  • the reception completion time of the data bucket 500-1 is known from the report as time T5.
  • the communication speed and reception completion time of the data packet 500-1 in the report are used. You can see the delay time.
  • the transmission delay is the difference II between T1 and T3.
  • the total packet delay is the time obtained by adding the packet dispersion caused by the transmission delay II and the speed difference between the transmission interface and the transfer path, and is the difference 12 between T5 and T2.
  • the arrival time of the data packet 500-2 is obtained from the transmission delay II, and is predicted to be the time T6 obtained by adding the transmission delay II to the transmission time T4 of the data packet 500-2.
  • the reception completion time of the data packet 500-2 can be obtained by determining the packet delay based on the communication speed of the report, the reception completion time of the data packet 500-2 can be predicted to be time T12. Therefore, in this route, the arrival time of the receiving node of the data bucket 500-3 can be predicted to be after time T12.
  • the reception completion time when reception is started from time T12 can be predicted to be time T15 by the above-described packet dispersion prediction. According to the result of such prediction, the difference between the predicted arrival time T12 of the data packet 500-3 and the actual arrival time T14 of the data packet 500-3 is the time ID1.
  • the route state indicated by the report is valid.
  • the route condition shown in the report is applied as it is. That is, in predicting the arrival time of the data packet 500-3, the time T11 is obtained by adding the transmission delay II to the transmission time T9 of the data packet 500-3. According to such a prediction result, the difference between the predicted arrival time T11 of the data packet 500-3 and the actual arrival time T14 of the data packet 500-3 is the time ID2.
  • the packet is received by the queuing unit 312 (Step 100).
  • Step 101 it is determined whether the route status information has been updated since the last packet was transmitted from that route. If the route status information is updated, the transmission history before the route status information becomes valid is deleted for all the updated routes (Step 102).
  • the arrival time of the packet is predicted (estimated) based on the route state information and the transmission history (Step 103). Then, the packet is transmitted to the route with the earliest predicted (estimated) arrival time (Step 104).
  • the state of the route may be already changed by the time the transmitting node acquires the state information, so the information is trusted. Not enough. Therefore, it is impossible to optimally select the route and set the timing at the time of transmitting the packet, and the packet is generally transmitted on a non-optimal route and timing. Correcting the arrival time prediction when updating the state information is equivalent to estimating the impact of the already performed non-optimal transmission after the time corresponding to the state information update interval has elapsed. For example, if the previous transmission was performed at a too high rate, the estimated arrival time of the transmitted packet is extended by updating the status information, and the transmission cost of the route is increased.
  • the correction of the prediction of the arrival time of the past transmission packet by the update of the state information has the effect of optimizing the route selection. Then, the congestion control of each route is also optimized in a long term.
  • the reception completion time of a transmission packet is estimated for each path, and the path having the highest evaluation value is selected. It is also possible to introduce a simple timing control in which the transmitting node 100 controls the transmission timing so that the estimated delay does not exceed the value. The operation of this embodiment will be described with reference to FIG.
  • the allowable estimation delay is denoted by TM.
  • TM the allowable estimation delay
  • the packet in order to send a packet at the TP, the packet must be presumed to have been received by TM + TP.
  • T8 which is later than TM + TP. Therefore, until the estimated reception completion time reaches TM + TP, the transmitting node 100 cannot transmit the packet 400-3 from this route. In this case, the transmitting node 100 holds the packet 400-3 until the estimated reception completion time of any of the routes is equal to or less than TM + TP, and transmits this packet from the route that can release the hold first.
  • FIG. 6 shows an operation flow of the scheduling unit 313 in the above embodiment.
  • a packet is received by queuing section 312 (Step 200).
  • Step 201 the power of updating the route status information after transmitting the last packet from the route is determined.
  • Step 202 the transmission history before the route status information becomes valid is deleted in all the updated routes.
  • the arrival time of the packet is predicted (estimated) based on the route state information and the transmission history (Step 203). Then, using the predicted (estimated) arrival time, it is determined whether (predicted (estimated) arrival time)> (current time + permissible estimated delay) for all routes (Step 204). If (estimated (estimated) arrival time) ⁇ (current time IJ + allowable estimated delay) for the route, the predicted (estimated) arrival time is the earliest among those routes, and the packet is transmitted to the route. (Step 205).
  • Step 205 If (predicted (estimated) arrival time)> (current time + permissible estimated delay) for all routes, the current time of any route is (predicted arrival time ⁇ permissible estimated delay). ), And if any of the conditions is satisfied, proceed to Step 205 (Step 205). 206).
  • the value of the allowable delay TP may be set independently for each path. For example, when the delay of each route or the amount of buffer of the resulting server is significantly different, especially under high load, it is considered that the bandwidth of each route can be effectively used by setting the TM settings differently for each route. .
  • the determination of the route selection may be performed with priority given thereto.
  • the method of judgment may differ depending on the attribute of the data to be sent. For example, for voice data, delay is selected, for urgent data, and for file transfer data, selection is made with emphasis on the line usage fee.
  • a feature of the present invention is that in any case, when the transmitting node updates the path state information, it simultaneously acquires the transmission packet or time at which the update is valid, and obtains the transmission cost from the valid packet or the transmission history after the valid time. Is to estimate the impact on the next packet and send the next packet to the least cost route.
  • the impact on the cost criterion already given by past non-optimal transmission can be used for subsequent transmission timing adjustment.
  • the reflection can be compensated for, and there is an effect of improving the use efficiency of the route.
  • FIG. 9 shows a configuration example in the present embodiment when the communication interface has an individual IP address.
  • a transmission node 100-2 and a reception node 101-2 having a plurality of paths are provided on a path from the data generation node 10-2 to the destination node 11-2. There are three paths between the sending node 100-2 and the receiving node 101-2.
  • the transmitting node 100-2 is a communication interface that is a communication interface such as S-IF # 1 1310-1, S-IF # 2 1310-2, S-IF # 3 1310-3, -It is equipped with IF # 4 1310-4.
  • Communication interfaces S-IF # 1 1310-1—S_IF # 3 1310-3 belong to different wireless networks 1300-1 1300-3, respectively, and are connected in a cellular carrier network via wireless links 202-4—202-6. Is connected to the carrier network gateway 1400-1—1400-3 located at The communication interface S-IFM 1310-4 is wired or wireless. It is connected to the D-IF 1200, which is the communication interface mounted on the data generation node 10-2, via the line link 202-7.
  • the receiving node 101-2 is equipped with an R-IF 1500-1 which is a communication interface as a receiving means. The receiving node 101-2 is connected to each carrier network gateway 1400-1 to 1400-3 via the communication interface R-IF 1500-1 and the wired network 102-2.
  • the communication interfaces S-IF # 1 1310-1-S-IF # 3 1310-3 are each individually configured by using means such as Point to Point Protocol (PPP).
  • PPP Point to Point Protocol
  • “100.1.2.3”, “110.1.2.3”, and “120.1.2.3” are assigned as IP addresses.
  • “200.7.8.9” is assigned to the communication interface R-IF 1500-1 as an IP address by using a method such as fixed setting or DHCP.
  • “192.168.2.50” is assigned to the communication interface D-IF 1200 as an IP address by using a fixed setting or a means such as DHCP.
  • FIG. 10 shows an example of the internal configuration of transmitting node 100-2 in the system of FIG.
  • the packet queuing unit 312-2, the scheduling unit 313-2, the route status monitoring unit 314-2, the memory unit 315-2, and the IP A packet generation unit 1316, an IP packet queuing unit 1317, and an IP routing processing unit 1318 are also configured.
  • Scheduling section 313-2 extracts input data (destination address and transmission data) from queuing section 312-2 and selects a specific communication interface.
  • the selection of the communication interface (route) used to transfer the extracted data is performed with reference to the route status managed by the route status monitoring unit 314-2.
  • the route selection method of the scheduling unit 313-2 and the route status monitoring unit 314-2 selects and determines a route by the same operation of the scheduling unit 313 and the route status monitoring unit 314 described above.
  • the information on the path state is stored in the memory unit 315-2 in the same manner as the memory unit 315 described above. In the following description, it is assumed that the scheduling unit 313-2 and the route state monitoring unit 314-2 have selected a communication interface (route) by the same operation as the above-described operation.
  • IP packet generating section 1316 generates an IP packet by adding an IP header to the data received from scheduling section 313.2.
  • IP packet queuing unit Reference numeral 1317 denotes a buffer for storing the IP packet generated by the IP packet generation unit 1316.
  • the IP routing processing unit 1318 extracts the IP packet accumulated in the IP packet queuing unit 1317, determines the next transfer destination of the IP packet, and sets the communication interface S-IF # 1 1310-1—S-IF # 4 Sends IP packets using the appropriate one of 1310-4.
  • FIG. 11 shows the configuration of the IP routing processing unit 1318.
  • the IP notifying processor 1318 is provided with a route control table 1321 (shown in FIG. 12) used to determine the transfer destination of the passed IP packet. Further, an IF address management table 1322 (shown in FIG. 13) in which the IP address assigned to each mounted communication interface is recorded is provided. Then, using the routing control table 1321 and the IF address management table 1322, the transfer destination of the IP bucket passed to the IP routing processing unit 1318 is determined, and the corresponding communication interface S-IF # 1 1310- 1 S_IF # 4 A transmission IF determination / transmission processing unit 1320 that transmits the IP packet to 1310-4 is provided.
  • Fig. 14 shows an example of a table (hereinafter, a path communication interface correspondence table 1330) storing the correspondence between the communication paths and the corresponding communication interfaces stored in the memory unit 315-2. It is.
  • Route Each entry of the communication interface correspondence table 1330 includes a communication route number, which is an identifier of each communication route recognized by the scheduling unit 313-2 and the route status monitoring unit 314-2, and a connection between each communication route. Information on the name of the communication interface being used is stored.
  • the routing control table 1321 shown in FIG. 12 includes, for each destination network IP address to which an IP packet is to be transmitted, a network mask and a next transfer destination for the IP packet to reach that network. Is described. Then, information indicating a communication interface connected to the same subnetwork as the gateway IP address is recorded. Actually, a multicast address or the like for transmitting to all communication devices belonging to the same subnet may be set, but illustration and description thereof are omitted.
  • the contents of the IF address management table 1322 are updated each time the IP address assigned to each communication interface is changed.
  • receiving node 101-2 is equipped with only a single communication interface, R-IF 1500-1, as a receiving means, whereas transmitting node 100-2 Is equipped with S-IF # 1 1310-1 S_IF # 4 1310-4, which is a communication interface to which an individual IP address is assigned. Therefore, the routing control table 1321 has entries 1321-a, 1321-b, and 1321-in which different gateway IP addresses and communication interfaces are registered for “200.7.8.9” having the same destination network IP address. c exists.
  • the route control table 1321 includes route information to the data generation node 10-2.
  • the transmission IF determination 'transmission processing unit 1320 determines the interface to be used for transmitting the IP packet by using the header information of the received IP packet and the route control table 1321, and performs a process called IP routing. Execute.
  • scheduling section 313-2 selects a path having a communication path number "3" registered in path communication interface correspondence table 1330 as a transmission path.
  • a path having a communication path number "3" registered in path communication interface correspondence table 1330 As an example, an example is shown in which an IP packet is transmitted using S-IF # 2 202-5, which is a communication interface corresponding to the determined route. The same processing can be performed when another route is selected.
  • the scheduling unit 313-2 When selecting the route having the communication route number "3" as the communication route, the scheduling unit 313-2 routes the communication interface name "S-IF # 2" corresponding to the communication route to the route communication interface. Obtained from interface correspondence table 1330.
  • the scheduling unit 313-2 checks the transmission IP packet (Hereinafter referred to as transmission IP packet generation data) is generated and passed to the IP packet generation unit 1316.
  • FIG. 15 shows a configuration of transmission IP packet generation data 1510.
  • the IP address "200.7.8.9" of the communication interface 1500-1 of the receiving node 101-2 as the "destination IP address” is the IP address of the communication interface S_IF # 2 1310-2 "110.1” as the "source IP address”. .2.3 ”is stored.
  • the IP packet generation unit 1316 creates a transmission IP packet 1610 shown in FIG. 16 based on the received transmission IP packet generation data 1510 and adds it to the IP packet queuing unit 1317.
  • the “source IP address” field of the IP header contains the communication interface S-IF # 2 1310-2.
  • the IP address “110.1.2.3” is stored in the “Destination IP address” field of the IP header, and the IP address “200.7.8.9” of the R-IF 1500-1, which is the communication interface of the receiving node 101-2, is stored. .
  • the transmission IF determination / transmission processing unit 1320 in the IP routing processing unit 1318 extracts the transmission IP packet 1610 from the IP bucket queue unit 1317, and uses the routing control table 1321 and the IF address management table 1322. Then, the communication interface for transferring the outgoing IP packet is determined, and the outgoing process is executed.
  • FIG. 17 shows a flow of transmission IF determination by transmission IF determination / transmission processing section 1320 in the present embodiment.
  • Transmission IF determinationSend processing unit 1320 processes the number of entries in routing control table 1321 when performing search processing based on the first condition when used routing control table 1321 is composed of X entries.
  • the first candidate list which is an array that stores the counter value i indicating whether the target is the target, the entry of the routing control table selected as the transmission candidate according to the first condition, and the entry stored in the first candidate list
  • a second candidate list which is an array that stores the selected transmission interface, and a counter value n indicating the number of entries stored in the second candidate list are prepared as variables.
  • an outgoing IP packet 1610 is extracted from the IP packet queue / funding unit 1317 (Step 300).
  • force as the initial value "1" is set to the counter values i and j, and "0" is set to the counter values m and n (Step 301), and the process proceeds to Step 302.
  • Step 303 the value of the counter value i is incremented by one (St mark 306), and the process proceeds to the next route control table entry. If the value stored in the destination IP address of the outgoing IP packet 1610 does not match the value stored in the destination network IP address of the ith entry in the routing control table (Step 303: NO), Proceed directly to Step 306.
  • Step 302 By repeating Steps 302 to 306, processing is performed for each entry in the order of the first entry power in the routing control table.
  • the process reaches the final entry (St mark 302: YES)
  • the process proceeds to Step 307 to determine whether or not an entry exists in the first candidate list.
  • Whether or not the first candidate exists is specifically determined by the value of the counter value m. If the value of the counter value m is S “0” (St mark 307: YES), the processing ends because there is no communication interface for transmitting the transmission IP packet 1610 (end). When the value of the counter value m is a value other than “0” (St mark 307: NO), the first candidate exists, and the process proceeds to the St mark 308. Next, it is determined whether or not the value of the counter value m is “1”.
  • Step: NO If the counter values j and m are not equal (Step: NO), first, the communication interface of the first candidate list entry is obtained (St mark 311). Next, from the IF address management table 1322, the assigned IP address corresponding to the communication interface acquired with the St mark 310 is obtained (St mark 312).
  • the source IP address of the outgoing IP packet 1610 is compared with the assigned IP address obtained in the St mark 311 (St mark 313), and when the source IP address of the outgoing IP packet 1610 matches the assigned IP address ( (St mark 313: YES), the communication interface acquired at St mark 311 is copied to the nth entry of the second candidate list (St mark 314), and the counter value n is incremented by one (St mark 315). ). Further, the value of the counter value j is incremented by one (St mark 316), and the process proceeds to the next entry of the first candidate list. If the source IP address of the outgoing IP packet 1610 and the assigned IP address do not match (St mark 313: NO), the process directly proceeds to St mark 316.
  • Steps 310 to 316 processing is performed for each entry in the order of the first entry power of the first candidate list. Then, when the process reaches the final entry (St mark 310: YES), the process proceeds to Step 317 to determine whether or not an entry exists in the second candidate list.
  • Whether or not the second candidate exists is specifically determined by the value of the counter value n.
  • the value of the counter value n is “0”, it means that a communication interface capable of transmitting the transmission IP packet 1610 in the first candidate list is not uniquely determined.
  • the value of the counter value n is “1”, it means that the communication interface capable of transmitting the transmission IP packet 1610 is determined at will.
  • the case where the value of the counter value n is “2” or more means that a communication interface capable of transmitting the transmission IP packet 1610 exists in the second candidate list, but has not been uniquely determined.
  • Step 319: YES when the value of the counter value n is "0" (Step 319: YES), any of the first candidate list
  • the transmission interface is obtained from the entry (Step 320), and a transmission IP packet 1610 is transmitted using the obtained transmission interface (Step 322), and the process ends (End).
  • the transmission interface is obtained from any entry of the second candidate list (St mark 321), and the obtained transmission interface is used.
  • the IP packet 1610 is transmitted (St mark 322), and the processing ends (END).
  • the first candidates correspond to the entries 1321_a, 1321_b, and 1321-c of the routing control table 1321 shown in FIG. 21.
  • the first candidate list is the first candidate.
  • the first entry in the entry 1321_a of the routing control table 1321 has the content S
  • the second entry in the first candidate list has the entry 1321_b in the routing control table 1321.
  • “3” is stored in the counter value m.
  • Step 318 “S-IF # 2” is acquired as the transmission interface, and the transmission IF determination ′ transmission processing unit 1320 includes the scheduling unit
  • the transmission IP packet 1610 is transmitted using S-IF # 2 1310-2 which is the communication interface corresponding to the path with the path number “3” selected by 313-2.
  • the outgoing IP packet 1610 is transmitted from the communication interface S_IF # 2 1310-2, and is transmitted via the carrier network GW1400-3 to the R-IF, which is a communication interface of the receiving node 101-2. 1500-1.
  • the transmitting node 100-2 and the receiving node 101-2 are provided with a plurality of communication interfaces that do not correspond one-to-one, as in the present embodiment, and Even in the case of an IP network configuration in which an individual IP address is harmed to each communication interface, an IP address is determined using the route determined by the scheduling unit 313-2. Packets can be transmitted. In addition, it is also possible to perform IP notifying processing on an IP packet in which a source IP address is not particularly stored, or an IP packet expected to perform IP routing according to the related art.
  • the scheduling unit 313-2 selects the route having the communication route number "3" as the communication route, and then sets the IP address.
  • the format shown in FIG. 18 can be used as transmission IP packet generation data to be passed to the packet generation unit 1316.
  • FIG. 18 shows transmission IP packet generation data 1511 in the present embodiment.
  • the scheduling unit 313-2 stores the IP address “200.7.8.9” of the communication interface 1500-1 of the receiving node 101-2 as the “destination IP address” of the transmission IP packet generation data 1511.
  • the communication interface name “S-IF # 2” corresponding to the communication path number “3” acquired from the path communication interface correspondence table 1330 is stored as the “source interface” of 1510.
  • the IP packet generation unit 1316 When receiving the transmission IP packet generation data 1511, the IP packet generation unit 1316 creates a transmission IP packet 1611 shown in FIG. 19 and adds it to the IP packet queuing unit 1317.
  • the outgoing IP packet 1611 contains information based on the information contained in the received outgoing IP packet generation data 1511, and the “source IP address” field of the IP header contains the communication interface name “S-IF # 2J 1S IP
  • the “destination IP address” field of the header stores the IP address “200.7.8.9” of the R-IF 1500-1, which is the communication interface of the receiving node 101-2.
  • the transmission IF determination / transmission processing unit 1320 in the IP routing processing unit 1318 extracts the transmission IP packet 1611 from the IP bucket queue unit 1317, and uses the routing control table 1321 and the IF address management table 1322. Then, the communication interface for transferring the outgoing IP packet is determined, and the outgoing process is executed.
  • FIG. 20 shows the flow of transmission IF determination by transmission IF determination / transmission processing section 1320 in the present embodiment.
  • the transmission IF determination 'transmission processing unit 1320 checks the routing control table 1321 when performing the search processing under the first condition.
  • the counter value i indicating the entry to be processed and the value of the routing control table selected as the transmission candidate according to the first condition.
  • the first candidate list which is an array for storing entries, a counter value m indicating the number of entries stored in the first candidate list, and the number of items in the first candidate list when performing the selection process based on the second condition.
  • the counter value n indicating the number of entries is prepared as a variable.
  • Step 402 when the counter values i and X become equal, the first candidate search is completed.
  • the counter values i and X are not equal (St: 402: NO)
  • the values stored in the destination IP address of the outgoing IP packet 1611 and the destination network IP address of the i-th entry in the routing table are stored.
  • the value is compared with the set value (Step 403). If the comparison results in a match (Step 403: YES), the contents of the ith entry of the path control tape are copied to the m-th entry of the first candidate list (Step 404). Then, the value of the counter value m is increased by one (Step 405).
  • Step 406 the value of the counter value i is increased by one (St mark 406), and the process proceeds to the next route control table entry. If the value stored in the destination IP address of the outgoing IP packet 1611 does not match the value stored in the destination network IP address of the i-th entry in the routing control table (Step 403: NO), Step 406 remains unchanged. Proceed to.
  • Steps 402 to 406 processing is performed for each entry in the order of the first entry power in the routing control table. Then, when the process reaches the final entry (St mark 402: YES), the process proceeds to St mark 407 to determine whether or not an entry exists in the first candidate list.
  • Whether or not the first candidate exists is specifically determined based on the value of the counter value m. If the value of the counter value m is S “0” (St mark 407: YES), the processing ends because there is no communication interface for transmitting the transmission IP packet 1611 (end). When the value of the counter value m is a value other than “0” (St mark 407: NO), the first candidate exists, and the process proceeds to St mark 408. Next, it is determined whether or not the value of the counter value m is “1”. (St mark 408).
  • Step 408 the communication interface for transmitting the transmission IP packet 1611 is uniquely determined, so that it is recorded in the first entry of the first candidate list.
  • the acquired communication interface is acquired (Step 409), and an outgoing IP packet 1611 is transmitted using the acquired communication interface (St mark 422), and the process ends (End).
  • the communication interface to be used for transmitting the transmission IP packet 1611 cannot be uniquely determined.
  • the St mark 410 it is determined whether or not the second candidate search has been completed. Specifically, when the counter value j becomes equal to the counter value m, the second candidate search is completed. When the counter values j and m are not equal (St mark: NO), first, the communication interface of the j-th entry in the first candidate list is obtained (St mark 411).
  • the communication interface stored in the source IP address of the outgoing IP packet 1611 is compared with the communication interface obtained at St 411 (Step 412), and if they match (St 412: YES), the second The communication interface acquired in Step 411 is copied to the nth entry of the candidate list (Step 413), and the counter value n is incremented by one (St mark 414). Further, the value of the counter value j is increased by one (St mark 415), and the process proceeds to the next entry of the first candidate list. If the interface stored in the source IP address of the outgoing IP packet 1611 does not match the communication interface acquired in Step 411 (St mark 412: NO), the process proceeds to St mark 415 as it is.
  • Steps 410 to 415 processing is performed for each entry in the order of the first entry power of the first candidate list. Then, when the process reaches the final entry (St mark 410: YES), the process proceeds to Step 417 to determine whether or not an entry exists in the second candidate list.
  • Whether or not the second candidate exists is specifically determined by the value of the counter value n.
  • the value of the counter value n is “0”, it means that a communication interface capable of transmitting the transmission IP packet 1611 exists in the first candidate list, but has not been uniquely determined.
  • the value of the counter value n is “1”, it means that a communication interface capable of transmitting the transmission IP packet 1611 is determined at will.
  • the case where the value of the counter value n is equal to or more than “2” means that a communication interface capable of transmitting the transmission IP packet 1611 exists in the second candidate list, but has not been uniquely determined.
  • the first candidates correspond to the entries 1321-a, 1321-b, 1321-c of the routing control table 1321, and at the stage of executing the processing of the St mark 407, the first candidate in the first candidate list Entry contains the contents of the entry 1321-a of the routing table 1321, the first candidate list the second entry contains the contents of the entry 1321-b of the routing table 1321, and the third entry of the first candidate list Stores the contents of the entry 1321-c of the routing control table 1321 respectively. Also, “3” is stored in the counter value m. Furthermore,
  • the outgoing IP packet 1611 is transmitted from the communication interface S_IF # 2 1310-2, and is transmitted via the carrier network GW1400-3 to the R-IF, which is a communication interface of the receiving node 101-2. 1500-1.
  • transmission node 100-2 And receiving nodes 101-2 each have multiple communication interfaces that do not correspond one-to-one, and each communication interface has an individual IP address harmed. It becomes possible to transmit IP packets using the route determined by section 313-2.
  • the queue unit, the scheduling unit, and the route state monitoring unit of the transmitting node are configured as separate units, but all or a part of these units may be used.
  • It may be configured with a CPU or the like operated by a control program.

Abstract

 経路状態情報の更新の際に、その更新が有効となる時刻を記録し、また新しい状態情報と、その有効時刻以降のデータの送信履歴とに基づいて、各経路のパケットの到着時刻を予測する。そして、パケットの到着時刻の最も早い経路にパケットを送信する。これにより、受信側から入手した経路の状態を過去に送信したデータにも反映させて、実際のデータの到着時刻、又は受信完了時刻に近い到着時刻、又は受信完了時刻を予測することができる。

Description

明 細 書
負荷分散方法、ノード及び制御プログラム
技術分野
[0001] 本発明は複数の通信経路を利用可能な 2ノード間の通信方式に関し、特に送信ノ ードによる経路間負荷分散の技術に関する。
背景技術
[0002] 2ノード間に複数の通信経路が存在する場合、送信側ノードがトラフィックを各経路 に分散して入力し、受信側で各経路からのトラフィックを再統合することにより、単一 の経路を用いた場合よりも原理的に高い転送速度が得られる。この仕組みは、経路 を組み合わせて、一つの論理的な経路とする技術であり、代表的なものとして Inverse Multiplexingがあり、複数の低速リンクから論理的な広帯域回線を得る目的で利用さ れる。データ通信への適用例としては、 ATM回線の多重化や、 PPPリンクの多重化プ ロトコルである Multilink PPPなどが挙げられる。
[0003] Inverse Multiplexingに代表されるような、経路を組み合わせて一つの論理的な経 路とする技術におけるトラフィック分散方式としては、例えば各経路に順番にパケット またはフラグメントを送信するラウンドロビン方式が広く用いられている(例えば、非特 許文献 1)。この方法は各経路の速度がほぼ同一で一定な場合には有効であるが、 経路ごとに速度の不均衡がある場合には 2ノード間の転送速度が最も低速な経路に 律速されてしまう問題があった。
[0004] この問題に対応する方法としては各経路の利用頻度を速度に応じて制御する重み つきラウンドロビンが知られており、経路を組み合わせて一つの論理的な経路とする 技術に対応したルータ製品等に実装されている。また Cisco社等の製品では、入力パ ケットをハツシングして出力経路を決め、最適負荷分散を図る方法も実装されている 。これらの情報は各社の公開文書に記されている(例えば、非特許文献 2)。
[0005] 以上はいずれも経路が有線リンクのみから成る場合を想定した公知技術である。
[0006] 一方、経路を組み合わせて一つの論理的な経路とする技術にぉレ、て、経路が無線 リンクを含む場合についても提案されている。提案されている方式では、入力パケット をフラグメントに分割して各経路に割り当てる力 S、そのフラグメントの大きさの比率を送 信時の各経路の速度のみに応じて変更するものである。 (例えば、非特許文献 3、特 許文献 6)。
[0007] また、複数経路が選択可能な通信方式にぉレ、て、各経路の状態を監視し、その経 路状態や、遅延時間等を考慮して経路を選択する技術も提案されている (例えば、 特許文献 1、特許文献 2、特許文献 3、特許文献 4、特許文献 5)。
特許文献 1 :特開 2000 - 49862号公報
特許文献 2:特開 2001 - 308917号公報
特許文献 3:特開 2001 - 333100号公報
特許文献 4 :特開 2002— 176441号公報
特許文献 5:特開昭 58 - 27449号公報
特許文献 6 :特開 2000— 216815号公報
非特午文献 1: Striping Withm the Network subsystem, IEEE Network,
July/ August 1995
非特許文献 2 : Cisco Systems, "Load Balancing with Cisco Express Forwarding," し isco Application Note, Jan.1998
特許文献 3: "Adaptive Inverse Multiplexing for Wide-Area Wireless Networks," Snoeren et al, Proceedings of IEEE GlobeCom, Dec. 1999
発明の開示
発明が解決しょうとする課題
[0008] 上述した 2ノード間の経路中に無線リンクを含む場合の従来の技術では、送信ノー ドが送信経路を選択する際に選択基準として各経路の速度や遅延を参照する。しか し、それらが動的に変動する無線リンクを含む経路については経路状態の測定誤差 が累積しやすいので、送信しょうとするパケットが受信ノード側に到着する時刻ゃ受 信完了する時刻の正確な予測が困難であった。その結果、その予測結果に基づい て経路選択を行うと、実際には速度が著しく低下している経路を選択し、多重化効率 が低下するという問題があった。
[0009] 以下に、従来技術による送信パケットの到着時刻や受信完了時刻を予測する技術 について、図 8を用いて説明する。
[0010] 図 8中 700-1,
700-2, 700-3は送出されるデータパケットであり、その送信側ノードでのパケットの送 信履歴(実線)と受信側ノードでのパケットの受信履歴(実線)およびパケットの到着 及び受信完了時刻の予測(点線)がそれぞれ時間軸上で示されている。
[0011] まず、実際のパケットの送受信であるが、送信側ノード側から時刻 T1にデータパケ ット 700-1の送信が開始され、時刻 T2に送信が完了している。そして、受信側ノードで 、パケット 700-1は、時刻 T3より受信が開始され、時刻 T5に受信が完了している。
[0012] その後、送信側ノード側から時刻 T4にデータパケット 700-2の送信が開始され、時 刻 T7に送信が完了している。そして、受信側ノード側では、通信速度の低下により、 データパケット 700-2は、時刻 T6より受信が開始され、時刻 T11に受信が完了している
[0013] 更に、送信側ノード側から時刻 T8にデータパケット 700-3の送信が開始され、時刻
T9に送信が完了している。そして、受信側ノード側では、データパケット 700-3が、時 亥 IJT12より受信が開始され、時刻 T13に受信が完了している。
[0014] 一方、従来技術では、データパケット 700-1の受信完了時に受信ノードから発行さ れる伝送速度等の経路状態の情報に基づいて、パケットの到着時刻及び受信完了 時刻を予測している。
[0015] 例えば、図 8において、送信ノードは、受信ノードからの経路状態の情報を時刻 TX に受信している。送信ノード側では、データパケット 700-3の到着時刻及び受信完了 時刻の予測に際して、時刻 TXに受信した経路状態の情報を用いる。その結果、伝送 遅延 II等を知ることができ、データパケット 700-3の送信時刻 T8に伝送遅延 IIをカロえ た時刻 T10を、データパケット 700-3の到着時刻と予測していった。
[0016] し力、しながら、実際のデータパケット 700-3の到着時刻は時刻 T12であり、予測した 到着時刻 T10とは、時間 ID分誤差が生じている。
[0017] このように実際の時間とは大きく異なる予測により、誤った経路選択を行い、その結 果として多重化効率の低下を招レ、てレ、た。
[0018] この問題は、予測時の経路状態をリアルタイムで入手することができ、この経路状態 を送信時に反映することができれば解決するが、実際には現在の経路状態をリアノレ タイムで入出することは不可能である。
[0019] そこで、本発明は上記課題に鑑みて発明されたものであって、その目的は、受信側 から入手した経路状態を過去に送信したデータにも反映させることにより、実際のデ ータの到着時刻又は受信完了時刻に近い到着時刻又は受信完了時刻を予測する ことができる技術を提供することにある。
[0020] また、本発明の目的は、複数経路を選択可能な 2ノード間のデータ転送に際し、受 信側から入手した経路状態を過去に送信したデータにも反映させることにより、実際 のデータの到着時刻又は受信完了時刻に近い到着時刻又は受信完了時刻を予測 し、この予測に基づいて経路選択を行うことにより、多重化効率に優れる技術を提供 することにある。
[0021] また、本発明の目的は、複数経路を選択可能な 2ノード間のデータ転送に際し、各 経路の性能が動的に変化し、かつその時定数に比べ無視できないほど大きな往復 遅延が存在する場合にも効率的な経路リソースの活用を可能とする技術を提供する ことにある。
課題を解決するための手段
[0022] 上記課題を解決する第 1の発明は、負荷分散方法であって、
複数の通信経路を選択可能な 2ノード間において、送信側ノードにおいて入力され るパケットごとに、選択可能な各経路の経路状態情報と、前記経路状態情報が有効 となる時刻又は送信済みパケットの識別情報と、前記経路状態情報が有効となる時 刻以降の送信履歴又は送信済みパケットの識別情報で特定されるパケットの送信以 降の送信履歴とに基づいて、経路の選択または選択優先度の更新を行うことを特徴 とする。
[0023] 上記課題を解決する第 2の発明は、負荷分散方法であって、
複数の通信経路を選択可能な 2ノード間において、送信側ノードにおいて入力され るパケットごとに、選択可能な各経路の経路状態を監視し、その経路状態の経路状 態情報と、この経路状態情報が有効となる時刻又はパケットの識別情報を記憶する ステップと、 経路状態情報と、前記経路状態情報が有効となる時刻以降のパケットの送信履歴 、又は前記送信済みパケットの識別情報で特定されるパケットの送信以降のパケット の送信履歴に基づいて、各経路におけるパケットの到着予想時刻を推定するステツ プと、
前記推定された到着予想時刻に基づいて、経路の選択、又は選択優先度の更新 を行うステップとを有することを特徴とする。
[0024] 上記課題を解決する第 3の発明は、上記第 1又は第 2の発明において、前記経路 状態情報は、経路の遅延を含むことを特徴とする。
[0025] 上記課題を解決する第 4の発明は、上記第 1から第 3の発明のいずれかにおいて、 前記経路状態情報は、経路の通信速度を含むことを特徴とする。
[0026] 上記課題を解決する第 5の発明は、上記第 1から第 4の発明のいずれかにおいて、 前記経路状態情報は、経路の負荷を含むことを特徴とする。
[0027] 上記課題を解決する第 6の発明は、上記第 1から第 5の発明のいずれかにおいて、 経路の選択又は選択優先度の更新に際し、各経路の経路状態情報が更新されると
、更新以前に送信されたパケットに関する送信コスト計算結果に修正を加えることを 特徴とする。
[0028] 上記課題を解決する第 7の発明は、上記第 6の発明のいずれかにおいて、各経路 の送信コスト計算結果の修正に際し、最新の経路状態情報が有効となる最初の送信 済パケット以前の履歴を破棄することを特徴とする。
[0029] 上記課題を解決する第 8の発明は、上記第 1から第 7の発明のいずれかにおいて、 パケットを送信する経路として、受信側ノードでの受信完了時刻の推定値が最も早い 経路を選択することを特徴とする。
[0030] 上記課題を解決する第 9の発明は、上記第 1から第 8の発明のいずれかにおいて、 パケットを送信する経路として、受信側ノードで特定時刻までに受信完了できるデー タ量の推定値が最大の経路を選択することを特徴とする。
[0031] 上記課題を解決する第 10の発明は、上記第 1から第 9の発明のいずれかにおいて
、各経路につき、推測される現在の経路状態に応じてデータの送信を中断することを 特徴とする。 [0032] 上記課題を解決する第 11の発明は、上記第 10の発明のいずれかにおいて、前記 データ送信中断の基準が、推定受信完了時刻が特定の値以上であることを特徴とす る。
[0033] 上記課題を解決する第 12の発明は、上記第 1から第 11の発明のいずれかにおい て、経路選択又は送信中断の判断を、送信データの属性ごとに異なるポリシーにより 行うことを特徴とする。
[0034] 上記課題を解決する第 13の発明は、上記第 1から第 12の発明のいずれかにおい て、受信パケットの宛先アドレスに対応する通信インターフェースを、通信インターフ エースのアドレスと、その通信インターフェースを経由して到達する宛先アドレスとが 関連付けられたテーブルから選択し、前記受信パケットに送信元アドレス又は通信ィ ンターフェースを指定する情報がある場合には、前記送信元アドレス又は通信インタ 一フェースに対応する通信インターフェースを前記選択された通信インターフェース 力 選択し、前記受信パケットに送信元アドレス又は通信インターフェースの情報が ない場合には、前記選択された通信インターフェースの中力 任意の通信インターフ エースを選択し、選択した通信インターフェースに前記受信パケットを送出することを 特徴とする。
[0035] 上記課題を解決する第 14の発明は、パケットを送信する経路を複数選択可能なノ ードであって、入力されるパケットごとに、選択可能な各経路の経路状態情報と、前 記経路状態情報が有効となる時刻又は送信済みパケットの識別情報と、前記経路状 態情報が有効となる時刻以降の送信履歴又は送信済みパケットの識別情報で特定 されるパケットの送信以降の送信履歴とに基づいて、経路の選択または選択優先度 の更新を行う手段を有することを特徴とする。
[0036] 上記課題を解決する第 15の発明は、パケットを送信する経路を複数選択可能なノ ードであって、
送信側ノードにおいて入力されるパケットごとに、選択可能な各経路の経路状態を 監視し、その経路状態の経路状態情報と、この経路状態情報が有効となる時刻又は パケットの識別情報とを監視する監視手段と、
前記経路状態情報と、この経路状態情報が有効となる以降のパケットの送信履歴と が記憶された記憶手段と、
前記経路状態情報と、この経路状態情報が有効となる以降のパケットの送信履歴 に基づいて、各経路におけるパケットの到着予想時刻を推定し、前記推定された到 着予想時刻に基づいて、経路の選択、又は選択優先度の更新を行うスケジユーリン グ手段と
を有することを特徴とする。
[0037] 上記課題を解決する第 16の発明は、上記第 14又は 15の発明において、前記経 路状態情報は、経路の遅延を含むことを特徴とする。
[0038] 上記課題を解決する第 17の発明は、上記第 14から第 16の発明のいずれかにお いて、前記経路状態情報は、経路の通信速度を含むことを特徴とする。
[0039] 上記課題を解決する第 18の発明は、上記第 14から第 17の発明のいずれかにお いて、前記経路状態情報は、経路の負荷を含むことを特徴とする。
[0040] 上記課題を解決する第 19の発明は、上記第 14から第 18の発明のいずれかにお いて、前記スケジューリング手段は、経路の選択又は選択優先度の更新に際し、各 経路の経路状態情報が更新されると、更新以前に送信されたパケットに関する送信 コスト計算結果に修正を加えることを特徴とする。
[0041] 上記課題を解決する第 20の発明は、上記第 19の発明において、前記スケジユーリ ング手段は、各経路の送信コスト計算結果の修正に際し、最新の経路状態情報が有 効となる最初の送信済パケット以前の履歴を破棄することを特徴とする。
[0042] 上記課題を解決する第 21の発明は、上記第 14から第 20の発明のいずれかにお いて、前記スケジューリング手段は、パケットを送信する経路として、受信側ノードで の受信完了時刻の推定値が最も早い経路を選択することを特徴とする。
[0043] 上記課題を解決する第 22の発明は、上記第 14から第 21の発明のいずれかにお いて、前記スケジューリング手段は、パケットを送信する経路として、受信側ノードで 特定時刻までに受信完了できるデータ量の推定値が最大の経路を選択することを特 徴とする。
[0044] 上記課題を解決する第 23の発明は、上記第 14から第 22の発明のいずれかにお いて、前記スケジューリング手段は、各経路につき、推測される現在の経路状態に応 じてデータの送信を中断することを特徴とする。
[0045] 上記課題を解決する第 24の発明は、上記第 23の発明において、前記データ送信 中断の基準が、推定受信完了時刻が特定の値以上であることを特徴とする。
[0046] 上記課題を解決する第 25の発明は、上記第 14から第 24の発明のいずれかにお いて、前記スケジューリング手段は、経路選択又は送信中断の判断を、送信データ の属性ごとに異なるポリシーにより行うことを特徴とする。
[0047] 上記課題を解決する第 26の発明は、上記第 14から第 25の発明のいずれかにお いて、通信インターフェースのアドレスと、その通信インターフェースを経由して到達 する宛先アドレスとが関連付けられたテーブルと、送信するパケットの宛先アドレスに 対応する通信インターフェースを前記テーブルから選択し、前記送信するパケットに 送信元アドレス又は通信インターフェースを指定する情報がある場合には、前記送信 元アドレス又は通信インターフェースに対応する通信インターフェースを前記選択さ れた通信インターフェースから選択し、選択した通信インターフェースに前記送信す るパケットを送出するルーティング手段とを有することを特徴とする。
[0048] 上記課題を解決する第 27の発明は、パケットを送信する経路を複数選択可能なノ ードの制御プログラムであって、前記プログラムはノードを、
入力されるパケットごとに、選択可能な各経路の経路状態情報と、前記経路状態情 報が有効となる時刻又は送信済みパケットの識別情報と、前記経路状態情報が有効 となる時刻以降の送信履歴又は送信済みパケットの識別情報で特定されるパケット の送信以降の送信履歴とに基づいて、経路の選択または選択優先度の更新を行う 手段として機能させることを特徴とする。
[0049] 上記課題を解決する第 28の発明は、パケットを送信する経路を複数選択可能なノ ードの制御プログラムであって、前記プログラムはノードを、
送信側ノードにおいて入力されるパケットごとに、選択可能な各経路の経路状態を 監視し、その経路状態の経路状態情報と、この経路状態情報が有効となる時刻又は パケットの識別情報とを監視する監視手段と、
前記経路状態情報と、この経路状態情報が有効となる以降のパケットの送信履歴 に基づいて、各経路におけるパケットの到着予想時刻を推定し、前記推定された到 着予想時刻に基づいて、経路の選択、又は選択優先度の更新を行うスケジユーリン グ手段と
して機能させることを特徴とする。
[0050] 上記課題を解決する第 29の発明は、上記第 27又は第 28の発明において、前記 経路状態情報は、経路の遅延を含むことを特徴とする。
[0051] 上記課題を解決する第 30の発明は、上記第 27から第 29の発明のいずれかにお いて、前記経路状態情報は、経路の通信速度を含むことを特徴とする。
[0052] 上記課題を解決する第 31の発明は、上記第 27から第 30の発明のいずれかにお いて、前記経路状態情報は、経路の負荷を含むことを特徴とする。
[0053] 上記課題を解決する第 32の発明は、上記第 27から第 31の発明のいずれかにお いて、前記制御プログラムは、前記スケジューリング手段を、経路の選択又は選択優 先度の更新に際し、各経路の経路状態情報が更新されると、更新以前に送信された パケットに関する送信コスト計算結果に修正を加えるように機能させることを特徴とす る。
[0054] 上記課題を解決する第 33の発明は、上記第 32の発明において、前記制御プログ ラムは、前記スケジューリング手段を、各経路の送信コスト計算結果の修正に際し、 最新の経路状態情報が有効となる最初の送信済パケット以前の履歴を破棄するよう に機能させることを特徴とする。
[0055] 上記課題を解決する第 34の発明は、上記第 27から第 33の発明のいずれかにお いて、前記制御プログラムは、前記スケジューリング手段を、パケットを送信する経路 として、受信側ノードでの受信完了時刻の推定値が最も早い経路を選択するように機 能させることを特徴とする。
[0056] 上記課題を解決する第 35の発明は、上記第 27から第 34の発明のいずれかにお いて、前記制御プログラムは、前記スケジューリング手段を、パケットを送信する経路 として、受信側ノードで特定時刻までに受信完了できるデータ量の推定値が最大の 経路を選択するように機能させることを特徴とする。
[0057] 上記課題を解決する第 36の発明は、上記第 27から第 35の発明のいずれかにお いて、前記制御プログラムは、前記スケジューリング手段を、各経路につき、推測され る現在の経路状態に応じてデータの送信を中断するように機能させることを特徴とす る。
[0058] 上記課題を解決する第 37の発明は、上記第 35の発明において、前記データ送信 中断の基準が、推定受信完了時刻が特定の値以上であることを特徴とする。
[0059] 上記課題を解決する第 38の発明は、上記第 27から第 36の発明のいずれかにお いて、前記制御プログラムは、前記スケジューリング手段を、経路選択又は送信中断 の判断を、送信データの属性ごとに異なるポリシーにより行うように機能させることを 特徴とする。
[0060] 上記課題を解決する第 39の発明は、上記第 27から第 38の発明のいずれかにお いて、前記制御プログラムは、送信するパケットの宛先アドレスに対応する通信インタ 一フェースを、通信インターフェースのアドレスと、その通信インターフェースを経由し て到達する宛先アドレスとが関連付けられたテーブル力 選択し、前記送信するパケ ットに送信元アドレス又は通信インターフェースを指定する情報がある場合には、前 記送信元アドレス又は通信インターフェースに対応する通信インターフェースを前記 選択された通信インターフェースから選択し、選択した通信インターフェースに前記 送信するパケットを送出するルーティング手段として機能させることを特徴とする。
[0061] 上記課題を解決する第 40の発明は、送信パケットの到着時刻又は受信完了時刻 を推定する送信パケットの時刻推定方法であって、
送信側ノード側から送信される送信パケットにパケットを識別するパケット識別情報 を付加して送信するステップと、
送信側ノード側にて、送信したパケットの送信履歴をパケット識別情報と共に記憶 するステップと、
受信ノード側にて、経路状態の情報を、この経路状態時に受信した最後のパケット のパケット識別情報を含めて送信側ノードに送信するステップと、
送信側ノード側にて、前記経路状態と、前記経路状態の情報に含まれるパケット識 別情報で特定されるパケット以降に送信されたパケットの送信履歴とに基づいて、送 信しょうとするパケットの到着時刻又は受信完了時刻を推定するステップと を有することを特徴とする。 [0062] 上記課題を解決する第 41の発明は、ノードであって、
送信パケットにパケットを識別するパケット識別情報を付加して送信する手段と、 送信したパケットの送信履歴をパケット識別情報と共に記録する手段と、 受信側から送信されてくる経路状態の情報を受信し、この経路状態と、この経路状 態が有効となるパケット以降に送信されたパケットの送信履歴とに基づいて、送信し ようとするパケットの到着時刻又は受信完了時刻を推定する手段と
を有することを特徴とする。
[0063] 上記課題を解決する第 42の発明は、パケットを送信するノードの制御プログラムで あって、前記制御プログラムはノードを、
送信パケットにパケットを識別するパケット識別情報を付加して送信する手段と、 送信したパケットの送信履歴をパケット識別情報と共に記録する手段と、 受信側から送信されてくる経路状態の情報を受信し、この経路状態と、この経路状 態が有効となるパケット以降に送信されたパケットの送信履歴とに基づいて、送信し ようとするパケットの到着時刻又は受信完了時刻を推定する手段として機能させるこ とを特徴とする。
[0064] 本発明は、データ (パケット)送信時において、送信データ (パケット)の送信履歴を 記憶する。この送信履歴には、例えば、送信データ (パケット)を識別する識別子や、 送信開始時刻等を記述する。一方、受信側では、データ (パケット)が通る経路の状 態情報 (例えば、速度やパケット遅延)を送信側に送信する。この経路状態情報には 、上述したデータ (パケット)の識別子のような、経路状態情報が適用される最新のデ ータ (パケット)を識別する情報を含める。
[0065] 送信側では、経路の状態情報を受信し、この経路状態に含まれているデータ(パケ ット)を識別する情報 (例えば、識別子)により、この経路状態が有効となる送信済み のデータ (パケット)を、送信履歴から求める。そして、求めたデータ(パケット)以降の データについて、受信した経路の状態を適用して受信完了時刻等を予測し、更に、 この予測と受信した経路の状態情報とに基づいて、各経路におけるこれから送信しよ うとするデータの到着時刻又は受信完了時刻を予測する。
[0066] 経路選択においては、予測されたデータの到着時刻又は受信完了時刻に基づい て、最も適切な経路、例えば到着時刻が最も早いと予測される経路を選択する。 発明の効果
[0067] 本発明は、受信側から得られる経路の状態情報を、この情報が有効となる過去に 送信したデータ(パケット)にも適用し、この結果を送信しょうとするデータ(パケット)の 予測にも反映させてデータの到着時刻又は受信完了時刻を予測しているので、従来 と比べて精度の良い予測を行うことができる。何故なら、従来技術では、受信側から 得られる経路の情報を、送信しょうとするデータ (パケット)のみに適用して到着時刻 又は受信完了時刻を予測しているからである。
[0068] また、本発明は、複数経路を選択可能な 2ノード間のデータ転送に際し、受信側か ら得られる経路の状態情報を、この情報が有効となる過去に送信したデータにも適用 し、この結果を送信しょうとするデータの予測にも反映させてデータの到着時刻又は 受信完了時刻を予測し、この予測に基づいて経路選択を行うので、予測の誤差によ る誤った経路選択をすることなぐ適切な経路を選択することによって多重化効率の 低下といった問題を回避することができる。
[0069] 本発明によれば、複数経路を選択可能な 2ノード間のデータ転送に際し、各経路の 性能が動的に変化し、かつその時定数に比べ無視できないほど大きな往復遅延が 存在する場合にも効率的な経路リソースの活用を可能とする。
図面の簡単な説明
[0070] [図 1]図 1は本発明の実施の形態におけるノード間経路の構成を示す図である。
[図 2]図 2は送信側ノードの構成を示す図である。
[図 3]図 3は実施の形態における送信側ノードおよび受信側ノードでのパケット処理 のタイミングを説明する為の図である。
[図 4]図 4は実施の形態におけるスケジューリング部の動作フローチャートである。
[図 5]図 5は他の実施の形態における送信側ノードおよび受信側ノードでのパケット 処理タイミングを説明する為の図である。
[図 6]図 6は他の実施の形態におけるスケジューリング部の動作フローチャートである 園 7]図 7は実施の形態における送信側ノードおよび受信側ノードにおける、到着時 刻又は受信完了時刻の予測を説明する為の図である。
園 8]図 8は従来の技術を説明する為の図である。
[図 9]図 9は通信インターフェースが個別の IPアドレスを持つ場合の構成例を示したも のである。
[図 10]図 10は図 9の系における送信ノード 100-2の内部構成の一例を示した図であ る。
[図 11]図 11は IPノレ一ティング処理部 1318の構成を表した図である。
[図 12]図 12は経路制御テーブル 1321の一例を示す図である。
[図 13]図 13は IFアドレス管理テーブル 1322の一例を示す図である。
[図 14]図 14はメモリ部 315-2に保存される経路 通信インターフェース対応表 1330の 一例を示した図である。
[図 15]図 15は送信 IPパケット生成データ 1510の構成を示す図である。
[図 16]図 16は送出 IPパケット 1610の構成を示す図である。
[図 17]図 17は送信 IF判定 ·送出処理部 1320による送信 IF決定のフローチャートであ る。
[図 18]図 18は他の送信 IPパケット生成データを示す図である。
[図 19]図 19は他の送出 IPパケットを示す図である。
[図 20]図 20は送信 IF判定 ·送出処理部 1320による他の送信 IF決定のフローチャート である。
[図 21]図 21は経路制御テーブル 1321のエントリの一例を示す図である。
符号の説明
10 データ生成ノード
11 宛先ノード
100 送信ノード
101 受信ノード
102 有線ネットワーク
200 無線送信手段
201 無線受信手段 202 無線リンク
300 無線網
310 通信インターフェース
312 キューイング咅 B
313 スケジューリング部
314 経路状態監視部
315 メモリ部
発明を実施するための最良の形態
[0072] 本発明を実施するための形態について説明する。
[0073] 本形態では、速度と共に遅延が動的に変動する複数の経路、特に無線リンクを含 む経路を組み合わせて、一つの論理的な経路とする技術への適用を想定している。 以下の説明では、複数の経路を組み合わせて一つの論理的な経路とする技術の例 として、 Inverse Multiplexingを例にして説明する。
[0074] 図 1は本実施の形態の構成例を示したものである。
[0075] 図 1では、データ生成ノード 10から宛先ノード 11までの経路上に、 Inverse
Multiplexingを行う送信ノード 100と受信ノード 101がある。送信ノード 100と受信ノード 101の間には 3つの経路があり、それぞれが無線送信手段 200-1— 200-3と無線受信 手段 201-1— 201-3の間の通信路として、無線リンク 202-1— 202-3を含む。尚、図 1で は 3つの経路の場合を示している力 経路の数は 2以上の任意の値を取ることができ る。また、送受信ノード間の経路は全て無線でも力 わなレ、が、一般に有線網 102も 含むものとする。更に、一般に各無線リンクは異なる無線網 300に属する。この例では 、経路 202-1、 202-2はセルラーネットワーク 300-1であり、無線網 300-2は無線 LANで ある。
[0076] 図 1の系において送信ノード 100は、データ生成ノード 10より受信したトラフィックを、 状態情報に基づき各経路に分配し、受信ノード 101は各経路を経由した送信ノード 100からのトラフィックを再統合して宛先ノード 11に向けて送信する。
[0077] ここで、送信ノード 100の内部構成を図 2に示す。
[0078] データ発生ノード 10が宛先ノード 11に向けて送信したトラフィックは通信インターフ エース 310-1から入力され、キューイング部 312、スケジューリング部 313を経て Inverse Multiplexingリンクの送信側通信インターフェースである 310-2または 310-3から送出さ れる。尚、複数の経路が最も送信ノード寄りの物理リンクを共有する場合もあるので、 Inverse Multiplexingリンクを構成する経路は必ずしも通信インターフェースと 1対 1対 応するものではない。
[0079] スケジューリング部 313は、キュ一^ fング部 312から入力データを取り出し、特定の経 路に送出する。取り出したデータの転送に用いる経路の選択は、経路状態監視部 314が管理する経路状態を参照して行われる。経路状態監視部 314は受信ノード 101 力 通信インターフェース 310-2または 310-3を介して断続的に各経路の状態情報お よび更新が有効となる送信パケットを識別する情報 (以下、レポートと称する)を受信 し、それらに基づきメモリ部 315に格納された経路状態情報を更新する。
[0080] ここで経路状態情報とは、通信性能の指標となる情報一般を指す。本実施の形態 では、そのうち経路の速度とパケット遅延を用いる。また、経路状態情報の有効時と は、送信ノード側における経路状態情報の更新時を意味するものでなぐ経路状態 情報で示される経路状態となった時間、その経路状態において伝送されたパケットで 特定される時刻等である。従って、経路状態情報の有効時以降の送信履歴とは、経 路状態情報の有効時以降に送信されたパケットの送信履歴等をいう。尚、この時刻 は、その測定の元になつたパケット情報 (パケットを識別する識別子)や、受信ノード 側から送信される受信時等から得られる力 多少のずれはかまわない。また、経路状 態情報を得る為、受信ノードが速度や遅延を測定する方法は各種提案されているが 、本実施の形態で想定している方法を以下に述べる。
[0081] 送信ノード 100は、受信ノード 101へのパケットの各々に識別子と送信時刻を揷入し て転送するものとする。受信ノードはパケット遅延を、送信ノードが揷入した送信時刻 と自身が受信した時刻を比較することで測定する。また、送信ノードは定期的に測定 用のパケット列を送信し、受信ノードはその到着時間のばらつきから速度を推定でき る。推定の方法の詳細は例えば文献「Dovrolis, Ramanathan, and Moore, "What DoPacket Dispersion Techniques Measuere?," IEEE INFOCOM 2001」で紹介されて いる。前記 Dowolisらの文献においては、送信側ノードが 2つのパケットを同時に送信 し、送信側でこの 2つのパケットの到着時刻差からリンク速度を推定する。パケットの 到着間隔を広げるのは伝送遅延であり、伝送遅延はリンク速度と関係があることから 、到着間隔より速度を推定可能である。
[0082] 受信ノード 101は、定期的にこれらの測定値を経路状態情報として送信ノード 100に 送信する。また、そのときまでに受信した最新のパケットの識別子を、送信する状態 情報が有効となるパケットの識別情報として同時に送信する。これらの情報が、上述 したレポートとして送信ノードで受信される。尚、以上の方式は一例であり、本発明の 実施可能性は経路状態情報及びこれが有効となるパケットの決定及び伝達の方法 には依存しない。
[0083] スケジューリング部 313は、次に転送すべきパケットにっき、送信経路ごとに現在の 経路情報およびその情報が有効となるパケットの送信時以降の送信履歴を参照し、 受信側ノード 101での到着遅延を予測する。送信履歴はメモリ部 315に記憶されてい る。スケジューリング部 313は、予測した到着遅延が最小となる経路を次に転送すベ きパケットの送信経路として選択し、選択した経路へのパケット転送後、その転送時 刻をメモリ部 315上の送信履歴に加える。
[0084] スケジューリング部 313で動作する経路ごとの到着遅延推定方法の一例を図 3に示 す。図 3中 400-1, 400-2, 400-3はデータパケットであり、その送信側ノード 100での送 信履歴および予測と受信側ノード 101での受信履歴および予測がそれぞれ時間軸上 で示されている。例えばデータパケット 400-1は送信側ノードで時刻 T1に送信が開始 され、時刻 T2に送信が完了している。また同じパケット 400-1は受信側ノードで時刻 T3より受信が開始され、時刻 T4に受信が完了している。ここで T1と T3との差 IIが伝送 遅延である。また、 T4と T2との差 12が、伝送遅延 IIに送信インターフェースと転送経 路の速度差とにより生じるパケットの分散を加えた総遅延となる。
[0085] ここで、時間軸上 TPの現在時刻において、パケット 400-3を送信しょうとしているもの とする。そして、この経路につき、 T5と TPの間でレポート結果通知の受信により、経路 状態情報が更新され、この経路状態情報が有効となるパケットは 400-1からとする。そ こで、経路状態情報が有効となるパケット(400-1、 400-2)の送信履歴に基づいて、パ ケット 400-1、パケット 400-2を考慮したパケット 400-3の受信完了時刻の推定を行う。 [0086] すると、パケット 400-はり後に送信されたパケット 400-2の受信側ノード 101での受信 開始時刻及び完了時刻は現在受信している経路状態情報に含まれる速度及び伝送 遅延から推定される。推定された受信開始時刻は図 3中 T5、受信完了時刻は Τ7であ る。ここで、経路状態情報が示す伝送遅延は IIに等しいとすると、 TPに送信開始した パケット 400-3は時刻 T6に受信開始されるはずである力 そのときまだ受信側ノードで はパケット 400-2の受信が完了していないと推定されるのでパケット 400-3の推定受信 開始時刻はパケット 400-2の受信が完了すると推定される T7となり、パケット 400-3の 推定受信完了時刻は経路状態情報に含まれる経路速度から推定されるパケット分散 をカロえた T8となる。同様にパケット 400-3の受信完了時刻の推定を各経路につき行い 、それが最も早い時刻となる経路にパケット 400-3は送出される。
[0087] なお、図 3における TPの時点での受信側の到着時刻推定に用いている経路状態 情報は、 T5と TPの間でレポート結果通知の受信により更新されたものである。すると 、パケット 400-2を送信した際の到着時刻推定は TPにおけるより古い経路状態情報 に基づいて行われたことになる。この古い状態情報を情報 A、 T5と TPとの間で更新さ れた新しい情報を情報 Bとすると、リンク状態の変動により情報 Aと情報 Bに含まれる 遅延や経路速度が異なれば、 Aに基づく到着時刻予測は、図 3に示される情報 Bに 基づく到着時刻予測と異なっていたはずである。したがって、図 3に示したパケット 400-1および 400-2の到着時刻予測は情報 Bを得た結果の修正を反映している。ひと たび経路状態情報の更新が行われると、その更新が有効となるパケット以前の送信 履歴は参照不要となるのでこれを破棄する。
[0088] 更に、本発明を適用した場合のパケット到着時刻推定及び受信完了時刻と、従来 のパケット到着時刻推定及び受信完了時刻との差を、図 7を用いて具体的に説明す る。
[0089] 図 7中 500-1, 500-2, 500-3は送出されるデータパケットであり、その送信側ノードで のパケットの送信履歴(実線)と受信側ノードでの実際のパケットの受信履歴(実線) がそれぞれ時間軸上で示されている。また、パケットの到着及び受信完了時刻の予 測(点線)もそれぞれ時間軸上で示されている。また、図 7上部に記した曲線は、伝送 経路の速度変化を示すものである。図 7では、時間が経過するとともに伝送速度が遅 くなつている旨を示している。
[0090] まず、実際のパケットの送受信である力 送信側ノード側から時刻 T1にデータパケ ット 500-1の送信が開始され、時刻 T2に送信が完了している。そして、受信側ノードで 、パケット 500-1は、時刻 T3より受信が開始され、時刻 T5に受信が完了している。
[0091] その後、送信側ノード側から時刻 T4にデータパケット 500-2の送信が開始され、時 刻 T8に送信が完了している。そして、受信側ノード側では、通信速度の低下により、 データパケット 500-2は、時刻 T7より受信が開始され、時刻 T13に受信が完了している
[0092] 更に、送信側ノード側から時刻 T9にデータパケット 500-3の送信が開始され、時刻
T10に送信が完了している。そして、受信側ノード側では、データパケット 500-3が、時 亥 IJT14より受信が開始され、時刻 T16に受信が完了している。
[0093] 次に、上述のような実際のパケットの送受信において、本発明を適用した場合のパ ケットの到着時刻及び受信完了時刻の予測について説明する。
[0094] 上述の如ぐデータパケット 500-1は、時刻 T1に、データパケット 500-1の送信時刻 及びパケット識別子の情報と共に送信側ノードで送信が開始され、時刻 T2に送信が 完了している。このとき、送信側ノードでは、送信履歴としてデータパケット 500-1の送 信時刻及びパケット識別子を記憶している。
[0095] 続いて、送信側ノードより、データパケット 500-2が、データパケット 500-2の送信時 刻及びパケット識別子の情報と共に時刻 T4に送信が開始され、時刻 T8に送信が完 了している。このとき、送信側ノードでは、上述と同様に、送信履歴としてデータパケ ット 500-2の送信時刻及びパケット識別子を記憶している。
[0096] 受信ノード側では、データパケット 500-1が、時刻 T3より受信が開始され、時刻 T5に 受信が完了している。このとき、受信ノード側は、データパケット 500-1の識別子、受 信完了時刻及び通信速度等の情報をレポートとして、送信ノードに送信する。
[0097] 送信ノード側では、時亥 1JTXに受信ノードからレポートを受信したとする。そして、レ ポートに含まれるデータパケット 500-1の識別子により、レポートの経路状態情報の有 効時は、データパケット 500-1の送信時刻 T1と判断する。
[0098] そこで、送信ノードは、時刻 T1以降の送信履歴に基づいて、データパケット 500-3の 到着時刻及び受信完了時刻の予測を行う。時刻 T1以降の送信履歴によると、対象と なるデータパケットはデータパケット 500-1、データパケット 500-2である。データバケツ ト 500-1の受信完了時刻は、レポートにより、時刻 T5とわかる。データパケット 500-2の 到着時刻及び受信完了時刻の予測には、レポートのデータパケット 500-1の通信速 度や、受信完了時刻が用レ、られ、これらの情報により、伝送遅延やパケットの総遅延 の時間がわかる。尚、伝送遅延は T1と T3との差 IIである。また、パケットの総遅延は、 伝送遅延 IIに送信インターフェースと転送経路の速度差とにより生じるパケットの分 散をカ卩えた時間であり、 T5と T2との差 12である。データパケット 500-2の到着時刻は、 伝送遅延 IIにより求められ、データパケット 500-2の送信時刻 T4に伝送遅延 IIを加え た時刻 T6と予測される。また、データパケット 500-2の受信完了時刻は、レポートの通 信速度によりパケット遅延を求めることができるので、データパケット 500-2の受信完 了時刻は時刻 T12と予測することができる。従って、この経路において、データバケツ ト 500-3の受信ノードの到着時刻は、時刻 T12以降と予測することができる。また、この 時刻 T12から受信が開始された場合の受信完了時刻は、上述したパケット分散の予 測により、時刻 T15と予測することができる。このような予測の結果によれば、予測した データパケット 500-3の到着時刻 T12と、実際のデータパケット 500-3の到着時刻 T14 との差は、時間 ID1である。
[0099] 一方、従来技術によるパケットの到着時刻及び受信完了時刻の予測では、受信ノ ードより得られたレポートの到着時刻において、レポートで示される経路状態を有効と しており、データパケット 500-3の予測にあたっても、レポートで示される経路状態をそ のまま適用している。すなわち、データパケット 500-3の到着時刻の予測にあたって、 データパケット 500-3の送信時刻 T9に伝送遅延 IIをカ卩えた時刻 T11と予測している。 このような予測の結果によれば、予測したデータパケット 500-3の到着時刻 T11と、実 際のデータパケット 500-3の到着時刻 T14との差は、時間 ID2である。
[0100] 従って、実際の到着時間との誤差時間 ID1と誤差時間 ID2とでは、本発明による予 測による誤差時間 ID1の方が、誤差時間 ID2よりも誤差が少ないことは、図面からも明 らかである。
[0101] 次に、以上説明したような到着時刻推定を含む、スケジューラの経路選択の手順を 図 4に示す。
[0102] まず、キューイング部 312により、パケットが受信される(Step 100)。
[0103] 次に、いずれかの経路で、その経路から最後のパケットを送信した後に経路状態情 報が更新された力 ^判断する(Step 101)。経路状態情報が更新された場合には、 更新された全ての経路で、経路状態情報が有効となる以前の送信履歴を削除する( Step 102)。
[0104] 続いて、各経路において、経路状態情報と送信履歴とに基づいて、パケットの到着 時刻を予測 (推定)する(Step 103)。そして、予測 (推定)到着時刻が最も早い経 路にパケットを送信する(Step 104)。
[0105] 最後に、パケット送信に用いた経路の送信履歴を更新する(Step 105)。
[0106] 以上の如ぐ経路状態情報更新の際にはそれ以前に送信済みのパケットの到着時 刻予測が修正され、それ以降のパケット送信の際の判断に反映されるので、結果的 に過去の送信実績の補償が可能になる。この補償の効果は各経路の往復遅延が大 きぐ経路の状態変動の周期に対して無視できない場合に顕著になる。以下にその 理由を述べる。
[0107] 経路の状態変動が往復遅延程度の時間で起こる場合、ある状態情報を送信側ノー ドが取得したころには既に当該経路の状態は変わっている力もしれないのでその情 報は信頼するに足らない。したがってパケットを送信する時点で経路選択およびタイ ミング設定を最適に行うことは不可能であり、一般には非最適な経路およびタイミング でパケットが送信されることになる。状態情報更新の際に到着時刻予測を修正するこ とは、既に行われた非最適な送信のインパクトを、状態情報更新間隔分の時間が経 つてから推定することに等しい。例えば、以前に高すぎるレートで送信していた場合、 状態情報の更新により送信済みパケットの到着予測時刻は延長されてその経路の送 信コストは引き上げられる。
[0108] 以上のような、状態情報更新による過去の送信パケットの到着時刻予測の修正は 経路選択の最適化の効果があるが、経路選択のみならず送信タイミング制御に到着 時刻予測の修正をフィードバックすると各経路の輻輳制御も長期的に最適化される。
[0109] 次に、実施するための他の形態について説明する。 [0110] 以下の形態では簡単なタイミング制御を実装した場合の動作を説明する。
[0111] 次に示す他の形態では、上述した形態と同様に送出パケットの受信完了時刻を経 路ごとに推定し、最も評価値の高い経路を選択するが、新たに経路ごとに許容推定 遅延を定義し、推定遅延がその値を超えなレ、よう送信側ノード 100が送信タイミングを 制御する簡単なタイミング制御を導入することもできる。図 5を用いて本形態の動作を 説明する。
[0112] 図 5中、許容推定遅延を TMとしている。この意味は、 TPの時点でパケットを送出す るにはそのパケットは TM+TPまでに受信完了すると推定されなければならないという ことである。ところが上述した形態と同様な手段でパケット 400-3の受信完了時刻を推 定すると T8となり、これは TM+TPよりも未来である。したがって推定受信完了時刻が TM+TPとなるまでの間、送信側ノード 100はこの経路からパケット 400-3を送出できな レ、。この場合送信側ノード 100はいずれかの経路の推定受信完了時刻が TM+TP以 下となるまでパケット 400-3を保留し、最も早く保留が解ける経路よりこのパケットを送 信する。以上の形態でのスケジューリング部 313の動作フローを図 6に示す。
[0113] まず、キューイング部 312により、パケットが受信される(Step 200)。
[0114] 次に、いずれかの経路で、その経路から最後のパケットを送信した後に経路状態情 報が更新された力を判断する(Step 201)。経路状態情報が更新された場合には、 更新された全ての経路で、経路状態情報が有効となる以前の送信履歴を削除する( Step 202)。
[0115] 続いて、各経路において、経路状態情報と送信履歴とに基づいて、パケットの到着 時刻を予測 (推定)する(Step 203)。そして、予測 (推定)された到着時刻を用いて 、全ての経路について、(予測 (推定)到着時刻) > (現在時刻 +許容推定遅延)であ るかを判断し (Step 204)、いずれかの経路で(予測(推定)到着時刻)≤ (現在時 亥 IJ +許容推定遅延)である場合には、それらの経路のうち予測 (推定)到着時刻が最 も早レ、経路にパケットを送信する(Step 205)。
[0116] 一方、全ての経路で、(予測 (推定)到着時刻) > (現在時刻 +許容推定遅延)であ る場合には、いずれかの経路で現在時刻が(予測到着時刻一許容推定遅延)となる まで待機し、いずれかの経路で条件を満たした場合には Step 205に進む(Step 206)。
[0117] 最後に、パケット送信に用いた経路の送信履歴を更新する(Step 207)。
[0118] 尚、許容遅延 TPの値は経路ごとに独立に設定してよい。例えば各経路の遅延や経 由するサーバのバッファ量等が大きく異なる場合、特に高負荷下では TMの設定値を 各経路で異なる設定とすることで各経路の帯域の有効活用が図れると考えられる。
[0119] また、経路選択の判断は推定受信完了時刻の他に、例えばパケット欠落率や回線 使用料金などが監視可能であればそれらを優先して評価してもよい。また判断の方 法は送られるデータの属性により異なってもよい。例えば音声データであれば遅延を 、緊急ではなレ、ファイル転送データであれば回線使用料金を重視した選択を行うな どである。本発明の特徴は、いずれの場合においても、送信ノードが経路状態情報 を更新する際に同時にその更新が有効となる送信パケットまたは時刻を取得し、有効 パケットまたは有効時刻以降の送信履歴より送信コストへのインパクトを推定し、コスト 最小の経路に次のパケットを送信することである。その結果、遅延が大きく経路の状 態変動の時定数に比べ無視できないほど大きい場合にも、過去の非最適な送信に より既に与えてしまったコスト基準へのインパクトをその後の送信タイミングの調整に 反映させることで補償することができ、経路の利用効率を向上させる効果がある。
[0120] 次に、上述した本発明の経路選択方法を、図 9に示すような IPネットワークに適用し た場合について説明する。
[0121] 図 9は、本実施の形態で、通信インターフェースが個別の IPアドレスを持つ場合の 構成例を示したものである。
[0122] 図 9では、データ生成ノード 10-2から宛先ノード 11-2までの経路上に、複数の経路 を持つ送信ノード 100-2と受信ノード 101-2がある。送信ノード 100-2と受信ノード 101-2の間には 3つの経路がある。図 9の構成例では、送信ノード 100-2は送信手段と して通信インターフェースである S-IF#1 1310-1、 S-IF#2 1310-2、 S-IF#3 1310-3、 S-IF#4 1310- 4を装備している。通信インターフェース S-IF#1 1310-1— S_IF#3 1310-3は、それぞれ異なる無線網 1300-1 1300-3に属しており、無線リンク 202-4— 202-6を介してセルラーキャリア網内に位置するキャリア網ゲートウェイ 1400-1— 1400-3と接続している。また、通信インターフェース S-IFM 1310-4は、有線または無 線リンク 202-7を介してデータ生成ノード 10-2に搭載された通信インターフェースであ る D-IF 1200と接続している。また、受信ノード 101-2は受信手段として通信インター フェースである R-IF 1500-1を装備している。受信ノード 101-2は、通信インターフエ ース R-IF 1500-1と有線網 102-2を介して、各キャリア網ゲートウェイ 1400-1— 1400-3 と接続している。
[0123] 図 9の系においては、通信インターフェース S-IF#1 1310-1-S-IF#3 1310-3はそれ ぞれ、 Point to Point Protocol(PPP)等の手段を用いることにより個別の IPアドレスとし て「100.1.2.3」、「110.1.2.3」、「120.1.2.3」が割り当てられている。また、通信インター フェース R-IF 1500-1には、固定的に設定もしくは DHCPなどの手段を用いることによ り IPアドレスとして「200.7.8.9」が割り当てられている。さらに、通信インターフェース D-IF 1200には、固定的に設定もしくは DHCPなどの手段を用いることにより IPアドレス として「192.168.2.50」が割り当てられている。
[0124] ここで、図 10に、図 9の系における送信ノード 100-2の内部構成の一例を示す。送 信ノード 100-2では IP通信を行うために、パケットのキューイング部 312-2と、スケジュ 一リング部 313-2と、経路状態監視部 314-2と、メモリ部 315-2と、 IPパケット生成部 1316と、 IPパケットキューイング部 1317と、 IPルーティング処理部 1318と力も構成され る。
[0125] スケジューリング部 313-2は、キューイング部 312-2から入力データ (宛先アドレス、送 信データ)を取り出し、特定の通信インターフェースを選択する。取り出したデータの 転送に用いる通信インターフェース(経路)の選択は、経路状態監視部 314-2が管理 する経路状態を参照して行われる。スケジューリング部 313-2及び経路状態監視部 314-2の経路選択方法は、上述したスケジューリング部 313及び経路状態監視部 314 の同様な動作により、経路を選択して決定する。また、経路状態の情報は、上述した メモリ部 315と同様にメモリ部 315-2に格納される。尚、以下の説明では、スケジユーリ ング部 313-2及び経路状態監視部 314-2が、上述した動作と同様な動作により、通信 インターフェース(経路)の選択が行われたものとして説明する。
[0126] IPパケット生成部 1316は、スケジューリング部 313- 2から受け取ったデータに IPへッ ダを付与することで IPパケットを生成するものである。また、 IPパケットキューイング部 1317は、 IPパケット生成部 1316が生成した IPパケットを蓄積するバッファである。また、 IPルーティング処理部 1318は、 IPパケットキューイング部 1317に蓄積された IPパケット を取り出し、 IPパケットの次の転送先を判別すると共に、通信インターフェース S-IF#1 1310-1— S-IF#4 1310-4のうち適切なものを使用して IPパケットの送出を行うものであ る。
[0127] 図 11は、 IPルーティング処理部 1318の構成を表したものである。 IPノレ一ティング処 理部 1318には、渡された IPパケットの転送先を判別するために使用される経路制御 テーブル 1321(図 12に示す)が備えられている。また、搭載されている各通信インター フェースに割り当てられている IPアドレスが記録されている IFアドレス管理テーブル 1322(図 13に示す)が備えられている。そして、これらの経路制御テーブル 1321と IFァ ドレス管理テーブル 1322を使用して、 IPルーティング処理部 1318に渡された IPバケツ トの転送先を判別し、対応する通信インターフェース S-IF#1 1310-1 S_IF#4 1310-4に向けて、該 IPパケットを送出する、送信 IF判定 ·送出処理部 1320が備えられ ている。
[0128] 図 14は、メモリ部 315-2に保存される、通信経路とそれに対応する通信インターフエ ースの対応を保存したテーブル(以下、経路 通信インターフェース対応表 1330)の 一例を示したものである。経路 通信インターフェース対応表 1330の各エントリには、 スケジューリング部 313-2および経路状態監視部 314-2が意識する各通信経路の識 別子である通信経路番号と、それぞれの通信経路との接続に利用している通信イン ターフェース名の情報が格納されてレ、る。
[0129] 図 12に示される経路制御テーブル 1321には一般的に、 IPパケットの送信先となる 宛先ネットワーク IPアドレス毎に、ネットワークマスクと、そのネットワークへ IPパケットを 到達させるために次の転送先を示すゲートウェイ IPアドレスが記述されている。そして 、そのゲートウェイ IPアドレスと同一のサブネットワークに接続された通信インターフエ ースを示す情報が記録されている。なお、実際には他に同一サブネットに属する全て の通信機器に送信を行うためのマルチキャストアドレス等が設定される場合もあるが、 これについての図示および説明を省略する。
[0130] 図 13に示される IFアドレス管理テーブル 1322には、送信ノードに搭載されている通 信インターフェースとそれに割り当てられてレ、る IPアドレスの対応が記録されてレ、る。
IFアドレス管理テーブル 1322の内容は、各通信インターフェースに割り当てられる IP アドレスが変更される毎に更新される。
[0131] 本実施の形態では、受信ノード 101-2は受信手段として単一の通信インターフエ一 スである R-IF 1500-1のみを装備しているのに対して、送信ノード 100-2はそれぞれ個 別の IPアドレスが割り当てられた通信インターフェースである S-IF#1 1310-1 S_IF#4 1310-4を装備している。そのため、経路制御テーブル 1321には、宛先ネットワーク IP アドレスの値が同一の「200.7.8.9」に対して、それぞれ異なるゲートウェイ IPアドレスと 通信インターフェースが登録されたエントリ 1321-a、 1321-b、 1321-cが存在している。 また、経路制御テーブル 1321には、データ生成ノード 10-2への経路情報である
1321-dも存在している。
[0132] 送信 IF判定'送出処理部 1320は、受け取った IPパケットのヘッダ情報と経路制御テ 一ブル 1321を用いて IPパケットの送出に使用するインターフェースを決定する、いわ ゆる IPルーティングと呼ばれる処理を実行する。
[0133] 本実施の形態では、図 12に示すように、「宛先ネットワーク IPアドレス」が重複したェ ントリが複数存在し、 IPノレ一ティング処理は、送出に使用するインターフェースを決定 するものである。
[0134] 以降では、図 9に示す本実施の形態において、スケジューリング部 313-2で送信経 路として、経路 通信インターフェース対応表 1330に登録されている通信経路番号 が「3」の経路が選択されたものとして、決定された経路に対応する通信インターフエ ースである S-IF#2 202-5を用いて IPパケットを送出させる場合の例を示す。他の経路 が選択された場合も同様の処理で実現することができる。
[0135] スケジューリング部 313-2は、通信経路として通信経路番号が「3」の経路を選択す ると、該通信経路に対応する通信インターフェース名である「S-IF#2」を経路 通信ィ ンターフェース対応表 1330から取得する。
[0136] 次に、取得した通信インターフェース名「S_IF#2」をキーとして、 IPルーティング処理 部 1318内にある IFアドレス管理テーブル 1322を探索し、 S_IF#2に害 ijり当てられている IPアドレス「110.1.2.3」を取得する。次に、スケジューリング部 313-2は、送信 IPパケット を生成するための情報 (以下、送信 IPパケット生成データ)を作成し、 IPパケット生成部 1316に渡す。
[0137] 図 15に、送信 IPパケット生成データ 1510の構成を示す。 「宛先 IPアドレス」として受 信ノード 101-2の通信インターフェース 1500-1の IPアドレス「200.7.8.9」が、「送信元 IP アドレス」として通信インターフェース S_IF#2 1310-2の IPアドレスである「110.1.2.3」が それぞれ格納される。
[0138] IPパケット生成部 1316では、受け取った送信 IPパケット生成データ 1510を元にして、 図 16に示す送出 IPパケット 1610を作成し、 IPパケットキューイング部 1317に追加する 。送出 IPパケット 1610には、受け取った送信 IPパケット生成データ 1510に含まれる情 報を元にして、 IPヘッダの「送信元 IPアドレス」フィールドには通信インターフェースで ある S- IF#2 1310-2の IPアドレス「110.1.2.3」が、 IPヘッダの「宛先 IPアドレス」フィール ドには受信ノード 101-2の通信インターフェースである R-IF 1500-1の IPアドレス「 200.7.8.9」力 それぞれ格納される。
[0139] 次に、 IPルーティング処理部 1318にある送信 IF判定 ·送出処理部 1320は、 IPバケツ トキユーイング部 1317から送出 IPパケット 1610を取り出し、経路制御テーブル 1321と IF アドレス管理テーブル 1322とを用いて、送出 IPパケットを受け渡す通信インターフエ ースを決定し、送出処理を実行する。
[0140] 図 17は、本実施における送信 IF判定 ·送出処理部 1320による送信 IF決定の流れを 表したものである。送信 IF判定 ·送出処理部 1320は、使用している経路制御テーブル 1321がエントリ数 Xで構成されるとき、第 1の条件によって探索処理を行う際に経路制 御テーブル 1321の何エントリ目を処理の対象としているかを表すカウンタ値 iと、第 1の 条件によって送信候補として選択された経路制御テーブルのエントリを格納する配列 である第 1の候補リストと、第 1の候補リストに格納されたエントリ数を表すカウンタ値 m と、第 2の条件による選択処理を行う際に第 1の候補リストの何エントリ目を処理の対 象としているかを表すカウンタ値 jと、第 2の条件によって送信候補として選択された送 信インターフェースを格納する配列である第 2の候補リストと、第 2の候補リストに格納 されたエントリ数を表すカウンタ値 nとを変数として用意している。まず、 IPパケットキュ 一/ fング部 1317より送出 IPパケット 1610を取り出す (Step300)。そして、初期値として力 ゥンタ値 i、 jにそれぞれ「1」を、カウンタ値 m、 nにそれぞれ「0」を設定し (Step301)、 Step302に進む。
[0141] 次に、カウンタ値 iと Xを比較し、第 1の候補探索が完了したかどうかを判定する
(St印 302)。具体的には、カウンタ値 iと Xの値が等しくなれば第 1の候補探索が完了し たことになる。カウンタ値 iと Xの値が等しくない場合 (St印 302 : NO)、送出 IPパケット 1610の宛先 IPアドレスに格納されている値と、経路制御テーブル i番目のエントリの宛 先ネットワーク IPアドレスに格納されている値との比較を行う (St印 303)。比較の結果が 一致となる場合 (St印 303 : YES)、第 1の候補リスト m番目のエントリに経路制御テープ ル i番目のエントリの内容を複写する (St印 304)。そして、カウンタ値 mの値を 1つ増加さ せる (St印 305)。さらに、カウンタ値 iの値を 1つ増加させて (St印 306)、次の経路制御テ 一ブルエントリの処理に移る。送出 IPパケット 1610の宛先 IPアドレスに格納されてレ、る 値と、経路制御テーブル i番目のエントリの宛先ネットワーク IPアドレスに格納されてい る値とがー致しなレ、場合 (Step303: NO)、そのまま Step306へ進む。
[0142] St印 302から Step306を繰り返すことで、経路制御テーブルの第 1エントリ力 順に各 エントリについて処理が行われることになる。そして、処理が最終エントリに達すると (St印 302 :YES)、第 1の候補リストにエントリが存在するかどうかを判定するために Step307へ進む。
[0143] 第 1の候補が存在するかどうかは、具体的にはカウンタ値 mの値によって判定される 。カウンタ値 mの値力 S「0」である場合 (St印 307 :YES)、送出 IPパケット 1610を送出する ための通信インターフェースが存在しないため、処理を終了する (エンド)。カウンタ値 mの値が「0」以外の値である場合 (St印 307: NO)、第 1の候補が存在することになり St印 308の処理に移る。次に、カウンタ値 mの値が「1」であるかどうかを判断する
(St印 308)。カウンタ値 mの値力 S「l」である場合 (St印 308 :YES)、送出 IPパケット 1610を 送出するための通信インターフェースが一意に決定されるため、第 1の候補リスト 1番 目のエントリに記録されている通信インターフェース取得し (St印 309)、取得した通信 インターフェースを用いて送出 IPパケット 1610を送出し (St印 322)、終了する (エンド)。 カウンタ値 mの値力 S「l」でない場合 (St印 308 : NO)、送出 IPパケット 1610の送出に使用 する通信インターフェースが一意に決定できないため、 St印 310へ進む。 [0144] St印 310では第 2の候補探索が完了したかどうかを判定している。具体的には、カウ ンタ値 jとカウンタ値 mが等しくなれば第 2の候補探索が完了したことになる。カウンタ 値 jと mが等しくない場合 (Step : NO)、まず、第 1の候補リスト潘目のエントリの通信イン ターフェースを取得する (St印 311)。次に、 IFアドレス管理テーブル 1322から、 St印 310 で取得した通信インターフェースに対応する割当 IPアドレスを取得する (St印 312)。続 いて、送出 IPパケット 1610の送信元 IPアドレスと St印 311で取得した割当 IPアドレスを 比較し (St印 313)、送出 IPパケット 1610の送信元 IPアドレスと割当 IPアドレスが一致す る場合 (St印 313 : YES)、第 2の候補リスト n番目のエントリに St印 311で取得した通信ィ ンターフェースを複写し (St印 314)、カウンタ値 nの値を 1つ増加させる (St印 315)。さら に、カウンタ値 jの値を 1つ増加させて (St印 316)、第 1の候補リストの次エントリの処理 に移る。送出 IPパケット 1610の送信元 IPアドレスと割当 IPアドレスが一致しない場合 (St印 313 : NO)、そのまま St印 316へ進む。
[0145] St印 310から Step316を繰り返すことで、第 1の候補リストの第 1エントリ力 順に各ェ ントリについて処理が行われることになる。そして、処理が最終エントリに達すると (St印 310 :YES)、第 2の候補リストにエントリが存在するかどうかを判定するために Step317へ進む。
[0146] 第 2の候補が存在するかどうかは、具値的にはカウンタ値 nの値によって判定される 。カウンタ値 nの値が「0」とは、第 1の候補リストに送出 IPパケット 1610の送出が可能な 通信インターフェースが存在する力 一意には決定されていないことを意味する。力 ゥンタ値 nの値が「1」とは、送出 IPパケット 1610の送出が可能な通信インターフェース がー意に決定されることを意味する。カウンタ値 nの値が「2」以上の場合とは、第 2の 候補リストに送出 IPパケット 1610の送出が可能な通信インターフェースが存在するが 、一意に決定されていないことを意味する。
[0147] カウンタ値 nの値力 S「l」である場合 (St印 317 :YES)、第 2の候補リスト 1番目エントリか ら通信インターフェースを取得し (St印 318)、取得した通信インターフェースを用いて 送出 IPパケット 1610を送出し (St印 322)、終了する (エンド)。カウンタ値 nの値が「1」で 無い場合 (St印 317 : NO)、 St印 319へ進む。
[0148] 次に、カウンタ値 nの値が「0」である場合 (Step319 : YES)、第 1の候補リストの任意の エントリから送信インターフェースを取得し (Step320)、取得した送信インターフェース を用いて送出 IPパケット 1610を送出し (Step322)、終了する (エンド)。カウンタ値 nの値 が「0」で無レ、場合 (St印 319: NO)、第 2の候補リストの任意のエントリから送信インター フェースを取得し (St印 321)、取得した送信インターフェースを用いて送出 IPパケット 1610を送出し (St印 322)、終了する (エンド)。
[0149] ここでは、送出 IPパケット 1610の IPヘッダ内の宛先 IPアドレスには「200.7.8.9」力 送 信元 IPアドレスには「110.1.2.3」がそれぞれ格納されている。したがって、第 1の候補 としては、図 21に示す経路制御テーブル 1321のエントリである 1321_a、 1321_b、 1321-cが該当し、 St印 307の処理を実行する段階では、第 1の候補リスト 1番目のェン トリには経路制御テーブル 1321のエントリ 1321_aの内容力 S、第 1の候補リスト 2番目の エントリには経路制御テーブル 1321のエントリ 1321_bの内容力 第 1の候補リスト 3番 目のエントリには経路制御テーブル 1321のエントリ 1321-cの内容がそれぞれ格納さ れる。また、カウンタ値 mには「3」が格納される。さらに、 Step312の処理においては、 j=lの場合は「100.1.2.3」が、 j=2の場合は「110.1.2.3」が、 j=3の場合は「120.1.2.3」が 、それぞれ割当 IPアドレスとして取得される。さらに、 Step317の処理を実行する段階 では、第 2の候補リストには送信インターフェースとして「S-IF#2」のみが格納され、力 ゥンタ値には「1」が格納される。すなわち、 St印 317の処理による判定の結果、 Step318の処理が実行されることとなり、 Step318では送信インターフェースとして「 S-IF#2」が取得され、送信 IF判定'送出処理部 1320は、スケジューリング部 313-2が選 択した経路番号「3」の経路に対応する通信インターフェースである S-IF#2 1310-2を 用いて送出 IPパケット 1610の送出が行われることになる。
[0150] 結果として、送出 IPパケット 1610は、通信インターフェースである S_IF#2 1310-2から 送出され、キャリア網 GW1400-3を介し、受信ノード 101-2が装備する通信インターフ エースである R-IF 1500-1により受信されることとなる。
[0151] 以上に説明した手順を行うことにより、本実施の形態のような、送信ノード 100-2と受 信ノード 101-2がそれぞれ 1対 1に対応しない複数の通信インターフェースを装備し、 かつ各通信インターフェースには個別の IPアドレスが害 ijり当てられている IPネットヮー ク構成の場合においても、スケジューリング部 313-2で決定された経路を利用して IP パケットを送信することが可能となる。また、送信元 IPアドレスが特に格納されていな レ、、従来技術での IPルーティングを期待している IPパケットに対しても、 IPノレ一ティン グ処理を行うことも可能である。
[0152] また、さらに他の実施として、送信ノード 100-2の内部構成の場合において、スケジ ユーリング部 313-2が、通信経路として通信経路番号が「3」の経路を選択した後、 IP パケット生成部 1316に渡す送信 IPパケット生成データとして図 18に示す形式とするこ とも可能である。
[0153] 図 18に、本実施における送信 IPパケット生成データ 1511を示す。スケジューリング 部 313-2は、送信 IPパケット生成データ 1511の「宛先 IPアドレス」として受信ノード 101-2の通信インターフェース 1500-1の IPアドレス「200.7.8.9」を格納し、さらに、送信 IPパケット生成データ 1510の「送信元インターフェース」として、経路 通信インター フェース対応表 1330より取得された、通信経路番号「3」に対応する通信インターフヱ ース名「S-IF#2」を格納する。
[0154] IPパケット生成部 1316は、送信 IPパケット生成データ 1511を受け取ると、図 19に示 す送出 IPパケット 1611を作成し、 IPパケットキューイング部 1317に追加する。送出 IPパ ケット 1611には、受け取った送信 IPパケット生成データ 1511に含まれる情報を元にし て、 IPヘッダの「送信元 IPアドレス」フィールドには通信インターフェース名である「 S-IF#2J 1S IPヘッダの「宛先 IPアドレス」フィールドには受信ノード 101-2の通信インタ 一フェースである R-IF 1500-1の IPアドレス「200.7.8.9」が、それぞれ格納される。
[0155] 次に、 IPルーティング処理部 1318にある送信 IF判定 ·送出処理部 1320は、 IPバケツ トキユーイング部 1317から送出 IPパケット 1611を取り出し、経路制御テーブル 1321と IF アドレス管理テーブル 1322とを用いて、送出 IPパケットを受け渡す通信インターフエ ースを決定し、送出処理を実行する。
[0156] 図 20は、本実施における送信 IF判定 ·送出処理部 1320による送信 IF決定の流れを 表したものである。本実施においても、送信 IF判定'送出処理部 1320は、使用してい る経路制御テーブル 1321がエントリ数 Xで構成されるとき、第 1の条件によって探索処 理を行う際に経路制御テーブル 1321の何エントリ目を処理の対象としているかを表す カウンタ値 iと、第 1の条件によって送信候補として選択された経路制御テーブルのェ ントリを格納する配列である第 1の候補リストと、第 1の候補リストに格納されたエントリ 数を表すカウンタ値 mと、第 2の条件による選択処理を行う際に第 1の候補リストの何 エントリ目を処理の対象としているかを表すカウンタ値 jと、第 2の条件によって送信候 補として選択された送信インターフェースを格納する配列である第 2の候補リストと、 第 2の候補リストに格納されたエントリ数を表すカウンタ値 nとを変数として用意してい る。まず、 IPパケットキューイング部 1317より送出 IPパケット 1611を取り出す (St印 400)。 そして、初期値としてカウンタ値 i、 jにそれぞれ「1」を、カウンタ値 m、 nにそれぞれ「0」 を設定し (St印 401)、 St印 402に進む。
[0157] 次に、カウンタ値 iと Xを比較し、第 1の候補探索が完了したかどうかを判定する
(St印 402)。具体的には、カウンタ値 iと Xの値が等しくなれば第 1の候補探索が完了し たことになる。カウンタ値 iと Xの値が等しくない場合 (St印 402 : NO)、送出 IPパケット 1611の宛先 IPアドレスに格納されている値と、経路制御テーブル i番目のエントリの宛 先ネットワーク IPアドレスに格納されている値との比較を行う (Step403)。比較の結果が 一致となる場合 (Step403 : YES)、第 1の候補リスト m番目のエントリに経路制御テープ ノレ i番目のエントリの内容を複写する (Step404)。そして、カウンタ値 mの値を 1つ増加さ せる (Step405)。さらに、カウンタ値 iの値を 1つ増加させて (St印 406)、次の経路制御テ 一ブルエントリの処理に移る。送出 IPパケット 1611の宛先 IPアドレスに格納されている 値と、経路制御テーブル i番目のエントリの宛先ネットワーク IPアドレスに格納されてい る値とがー致しなレ、場合 (Step403: NO)、そのまま Step406へ進む。
[0158] St印 402から Step406を繰り返すことで、経路制御テーブルの第 1エントリ力 順に各 エントリについて処理が行われることになる。そして、処理が最終エントリに達すると (St印 402 :YES)、第 1の候補リストにエントリが存在するかどうかを判定するために St印 407へ進む。
[0159] 第 1の候補が存在するかどうかは、具体的にはカウンタ値 mの値によって判定される 。カウンタ値 mの値力 S「0」である場合 (St印 407 :YES)、送出 IPパケット 1611を送出する ための通信インターフェースが存在しないため、処理を終了する (エンド)。カウンタ値 mの値が「0」以外の値である場合 (St印 407: NO)、第 1の候補が存在することになり St印 408の処理に移る。次に、カウンタ値 mの値が「1」であるかどうかを判断する (St印 408)。カウンタ値 mの値力 S「l」である場合 (Step408 :YES)、送出 IPパケット 1611を 送出するための通信インターフェースが一意に決定されるため、第 1の候補リスト 1番 目のエントリに記録されている通信インターフェース取得し (Step409)、取得した通信 インターフェースを用いて送出 IPパケット 1611を送出し (St印 422)、終了する (エンド)。 カウンタ値 mの値力 S「l」でない場合 (St印 408 : NO)、送出 IPパケット 1611の送出に使用 する通信インターフェースが一意に決定できないため、 St印 410へ進む。
[0160] St印 410では第 2の候補探索が完了したかどうかを判定している。具体的には、カウ ンタ値 jとカウンタ値 mが等しくなれば第 2の候補探索が完了したことになる。カウンタ 値 jと mが等しくない場合 (St印: NO)、まず、第 1の候補リスト j番目のエントリの通信イン ターフェースを取得する (St印 411)。次に、送出 IPパケット 1611の送信元 IPアドレスに 格納されている通信インターフェースと、 St印 411で取得した通信インターフェースと を比較し (Step412)、一致する場合 (St印 412 :YES)、第 2の候補リスト n番目のエントリに Step411で取得した通信インターフェースを複写し (Step413)、カウンタ値 nの値を 1つ 増加させる (St印 414)。さらに、カウンタ値 jの値を 1つ増加させて (St印 415)、第 1の候補 リストの次エントリの処理に移る。送出 IPパケット 1611の送信元 IPアドレスに格納され たインターフェースと Step411で取得した通信インターフェースとがー致しない場合 (St印 412 : NO)、そのまま St印 415へ進む。
[0161] St印 410から Step415を繰り返すことで、第 1の候補リスト 1番目のエントリ力 順に各 エントリについて処理が行われることになる。そして、処理が最終エントリに達すると (St印 410 :YES)、第 2の候補リストにエントリが存在するかどうかを判定するために Step417へ進む。
[0162] 第 2の候補が存在するかどうかは、具値的にはカウンタ値 nの値によって判定される 。カウンタ値 nの値が「0」とは、第 1の候補リストに送出 IPパケット 1611の送出が可能な 通信インターフェースが存在するが、一意には決定されていないことを意味する。力 ゥンタ値 nの値が「1」とは、送出 IPパケット 1611の送出が可能な通信インターフェース がー意に決定されることを意味する。カウンタ値 nの値が「2」以上の場合とは、第 2の 候補リストに送出 IPパケット 1611の送出が可能な通信インターフェースが存在するが 、一意に決定されていないことを意味する。 [0163] カウンタ値 nの値力 S「l」である場合 (St印 416 :YES)、第 2の候補リスト 1番目のエントリ 力 通信インターフェースを取得し (Step417)、取得した通信インターフェースを用い て送出 IPパケット 1611を送出し (St印 421)、終了する (エンド)。カウンタ値 nの値が「1」で 無い場合 (St印 416 : NO)、 St印 419へ進む。
[0164] 次に、カウンタ値 nの値が「0」である場合 (St印 418 : YES)、第 1の候補リストの任意の エントリから送信インターフェースを取得し (St印 419)、取得した送信インターフェース を用いて送出 IPパケット 1611を送出し (St印 421)、終了する (エンド)。カウンタ値 nの値 が「0」で無レ、場合 (St印 418: NO)、第 2の候補リストの任意のエントリから送信インター フェースを取得し (St印 420)、取得した送信インターフェースを用いて送出 IPパケット 1611を送出し (Step421)、終了する (エンド)。
[0165] ここでは、送出 IPパケット 1611の IPヘッダ内の宛先 IPアドレスには「200.7.8.9」が、送 信元 IPアドレスには実際には IPアドレスではない識別子である「S_IF#2」がそれぞれ 格納されている。したがって、第 1の候補としては、経路制御テーブル 1321のエントリ である 1321-a、 1321-b、 1321-cが該当し、 St印 407の処理を実行する段階では、第 1 の候補リスト 1番目のエントリには経路制御テーブル 1321のエントリ 1321-aの内容が、 第 1の候補リスト 2番目のエントリには経路制御テーブル 1321のエントリ 1321-bの内容 、第 1の候補リスト 3番目のエントリには経路制御テーブル 1321のエントリ 1321-cの 内容がそれぞれ格納される。また、カウンタ値 mには「3」が格納される。さらに、
Step416の処理を実行する段階では、第 2の候補リストには送信インターフェースとし て「S_IF#2」のみが格納され、カウンタ値には「1」が格納される。すなわち、 Step417の 処理による判定の結果、 Step418の処理が実行されることとなり、 Step418では送信ィ ンターフェースとして「S_IF#2」が取得され、送信 IF判定'送出処理部 1320は、スケジ ユーリング部 313-2が選択した経路番号「3」の経路に対応する通信インターフェース である S_IF#2 1310-2を用いて送出 IPパケット 1611の送出が行われることになる。
[0166] 結果として、送出 IPパケット 1611は、通信インターフェースである S_IF#2 1310-2から 送出され、キャリア網 GW1400-3を介し、受信ノード 101-2が装備する通信インターフ エースである R-IF 1500-1により受信されることとなる。
[0167] 以上に説明した手順を行うことにより、本実施の形態においても、送信ノード 100-2 と受信ノード 101-2がそれぞれ 1対 1に対応しない複数の通信インターフェースを装備 し、かつ各通信インターフェースには個別の IPアドレスが害 ijり当てられている IPネット ワーク構成の場合においても、スケジューリング部 313-2で決定された経路を利用し て IPパケットを送信することが可能となる。
[0168] また、通信インターフェースが特に指定されていなレ、、従来技術での IPノレ一ティン グを期待している IPパケットに対しても、 IPルーティング処理を行うことも可能である。
[0169] 尚、上述の実施の形態において、送信ノードのキュ一^ fング部、スケジューリング部 及び経路状態監視部をそれぞれ別の部として構成したが、これらの全部又は一部を
、制御プログラムで動作する CPU等で構成しても良レ、。

Claims

請求の範囲
[1] 負荷分散方法であって、
複数の通信経路を選択可能な 2ノード間において、送信側ノードにおいて入力され るパケットごとに、選択可能な各経路の経路状態情報と、前記経路状態情報が有効 となる時刻又は送信済みパケットの識別情報と、前記経路状態情報が有効となる時 刻以降の送信履歴又は送信済みパケットの識別情報で特定されるパケットの送信以 降の送信履歴とに基づいて、経路の選択または選択優先度の更新を行うことを特徴 とする負荷分散方法。
[2] 負荷分散方法であって、
複数の通信経路を選択可能な 2ノード間において、送信側ノードにおいて入力され るパケットごとに、選択可能な各経路の経路状態を監視し、その経路状態の経路状 態情報と、この経路状態情報が有効となる時刻又はパケットの識別情報を記憶する ステップと、
経路状態情報と、前記経路状態情報が有効となる時刻以降のパケットの送信履歴 、又は前記送信済みパケットの識別情報で特定されるパケットの送信以降のパケット の送信履歴に基づいて、各経路におけるパケットの到着予想時刻を推定するステツ プと、
前記推定された到着予想時刻に基づいて、経路の選択、又は選択優先度の更新 を行うステップと
を有することを特徴とする負荷分散方法。
[3] 前記経路状態情報は、経路の遅延を含むことを特徴とする請求項 1に記載の負荷 分散方法。
[4] 前記経路状態情報は、経路の通信速度を含むことを特徴とする請求項 1に記載の 負荷分散方法。
[5] 前記経路状態情報は、経路の負荷を含むことを特徴とする請求項 1に記載の負荷 分散方法。
[6] 経路の選択又は選択優先度の更新に際し、各経路の経路状態情報が更新される と、更新以前に送信されたパケットに関する送信コスト計算結果に修正を加えることを 特徴とする請求項 1に記載の負荷分散方法。
[7] 各経路の送信コスト計算結果の修正に際し、最新の経路状態情報が有効となる最 初の送信済パケット以前の履歴を破棄することを特徴とする請求項 6に記載の負荷 分散方法。
[8] パケットを送信する経路として、受信側ノードでの受信完了時刻の推定値が最も早 い経路を選択することを特徴とする請求項 1に記載の負荷分散方法。
[9] パケットを送信する経路として、受信側ノードで特定時刻までに受信完了できるデ ータ量の推定値が最大の経路を選択することを特徴とする請求項 1に記載の負荷分 散方法。
[10] 各経路につき、推測される現在の経路状態に応じてデータの送信を中断することを 特徴とする請求項 1に記載の負荷分散方法。
[11] 前記データ送信中断の基準が、推定受信完了時刻が特定の値以上であることを特 徴とする請求項 10に記載の負荷分散方法。
[12] 経路選択又は送信中断の判断を、送信データの属性ごとに異なるポリシーにより行 うことを特徴とする請求項 1に記載の負荷分散方法。
[13] 受信パケットの宛先アドレスに対応する通信インターフェースを、通信インターフエ ースのアドレスと、その通信インターフェースを経由して到達する宛先アドレスとが関 連付けられたテーブルから選択し、前記受信パケットに送信元アドレス又は通信イン ターフェースを指定する情報がある場合には、前記送信元アドレス又は通信インター フェースに対応する通信インターフェースを前記選択された通信インターフェースか ら選択し、前記受信パケットに送信元アドレス又は通信インターフェースの情報がな い場合には、前記選択された通信インターフェースの中から任意の通信インターフエ ースを選択し、選択した通信インターフェースに前記受信パケットを送出することを特 徴とする請求項 1に記載の負荷分散方法。
[14] パケットを送信する経路を複数選択可能なノードであって、
入力されるパケットごとに、選択可能な各経路の経路状態情報と、前記経路状態情 報が有効となる時刻又は送信済みパケットの識別情報と、前記経路状態情報が有効 となる時刻以降の送信履歴又は送信済みパケットの識別情報で特定されるパケット の送信以降の送信履歴とに基づいて、経路の選択または選択優先度の更新を行う 手段を有することを特徴とするノード。
[15] パケットを送信する経路を複数選択可能なノードであって、
送信側ノードにおいて入力されるパケットごとに、選択可能な各経路の経路状態を 監視し、その経路状態の経路状態情報と、この経路状態情報が有効となる時刻又は パケットの識別情報とを監視する監視手段と、
前記経路状態情報と、この経路状態情報が有効となる以降のパケットの送信履歴と が記憶された記憶手段と、
前記経路状態情報と、この経路状態情報が有効となる以降のパケットの送信履歴 に基づいて、各経路におけるパケットの到着予想時刻を推定し、前記推定された到 着予想時刻に基づいて、経路の選択、又は選択優先度の更新を行うスケジユーリン グ手段と
を有することを特徴とするノード。
[16] 前記経路状態情報は、経路の遅延を含むことを特徴とする請求項 15に記載のノー ド、。
[17] 前記経路状態情報は、経路の通信速度を含むことを特徴とする請求項 15に記載 のノード。
[18] 前記経路状態情報は、経路の負荷を含むことを特徴とする請求項 15に記載のノー ド、。
[19] 前記スケジューリング手段は、経路の選択又は選択優先度の更新に際し、各経路 の経路状態情報が更新されると、更新以前に送信されたパケットに関する送信コスト 計算結果に修正を加えることを特徴とする請求項 15に記載のノード。
[20] 前記スケジューリング手段は、各経路の送信コスト計算結果の修正に際し、最新の 経路状態情報が有効となる最初の送信済パケット以前の履歴を破棄することを特徴 とする請求項 19に記載のノード。
[21] 前記スケジューリング手段は、パケットを送信する経路として、受信側ノードでの受 信完了時刻の推定値が最も早い経路を選択することを特徴とする請求項 15に記載 のノード。
[22] 前記スケジューリング手段は、パケットを送信する経路として、受信側ノードで特定 時刻までに受信完了できるデータ量の推定値が最大の経路を選択することを特徴と する請求項 15に記載のノード。
[23] 前記スケジューリング手段は、各経路につき、推測される現在の経路状態に応じて データの送信を中断することを特徴とする請求項 15に記載のノード。
[24] 前記データ送信中断の基準が、推定受信完了時刻が特定の値以上であることを特 徴とする請求項 23に記載のノード。
[25] 前記スケジューリング手段は、経路選択又は送信中断の判断を、送信データの属 性ごとに異なるポリシーにより行うことを特徴とする請求項 15に記載のノード。
[26] 通信インターフェースのアドレスと、その通信インターフェースを経由して到達する 宛先アドレスとが関連付けられたテーブルと、
送信するパケットの宛先アドレスに対応する通信インターフェースを前記テーブル 力 選択し、前記送信するパケットに送信元アドレス又は通信インターフェースを指 定する情報がある場合には、前記送信元アドレス又は通信インターフェースに対応 する通信インターフェースを前記選択された通信インターフェースから選択し、選択 した通信インターフェースに前記送信するパケットを送出するルーティング手段と を有することを特徴とする請求項 15に記載のノード。
[27] パケットを送信する経路を複数選択可能なノードの制御プログラムであって、 前記プログラムはノードを、
入力されるパケットごとに、選択可能な各経路の経路状態情報と、前記経路状態情 報が有効となる時刻又は送信済みパケットの識別情報と、前記経路状態情報が有効 となる時刻以降の送信履歴又は送信済みパケットの識別情報で特定されるパケット の送信以降の送信履歴とに基づいて、経路の選択または選択優先度の更新を行う 手段として機能させることを特徴とするノードの制御プログラム。
[28] パケットを送信する経路を複数選択可能なノードの制御プログラムであって、 前記プログラムはノードを、
送信側ノードにおいて入力されるパケットごとに、選択可能な各経路の経路状態を 監視し、その経路状態の経路状態情報と、この経路状態情報が有効となる時刻又は パケットの識別情報とを監視する監視手段と、
前記経路状態情報と、この経路状態情報が有効となる以降のパケットの送信履歴 に基づいて、各経路におけるパケットの到着予想時刻を推定し、前記推定された到 着予想時刻に基づいて、経路の選択、又は選択優先度の更新を行うスケジユーリン グ手段と
して機能させることを特徴とするノードの制御プログラム。
[29] 前記経路状態情報は、経路の遅延を含むことを特徴とする請求項 28に記載のノー ドの制御プログラム。
[30] 前記経路状態情報は、経路の通信速度を含むことを特徴とする請求項 28に記載 のノードの制御プログラム。
[31] 前記経路状態情報は、経路の負荷を含むことを特徴とする請求項 28に記載のノー ドの制御プログラム。
[32] 前記制御プログラムは、前記スケジューリング手段を、経路の選択又は選択優先度 の更新に際し、各経路の経路状態情報が更新されると、更新以前に送信されたパケ ットに関する送信コスト計算結果に修正を加えるように機能させることを特徴とする請 求項 28に記載のノードの制御プログラム。
[33] 前記制御プログラムは、前記スケジューリング手段を、各経路の送信コスト計算結果 の修正に際し、最新の経路状態情報が有効となる最初の送信済パケット以前の履歴 を破棄するように機能させることを特徴とする請求項 32に記載のノードの制御プログ ラム。
[34] 前記制御プログラムは、前記スケジューリング手段を、パケットを送信する経路とし て、受信側ノードでの受信完了時刻の推定値が最も早い経路を選択するように機能 させることを特徴とする請求項 28に記載のノードの制御プログラム。
[35] 前記制御プログラムは、前記スケジューリング手段を、パケットを送信する経路とし て、受信側ノードで特定時刻までに受信完了できるデータ量の推定値が最大の経路 を選択するように機能させることを特徴とする請求項 28に記載のノードの制御プログ ラム。
[36] 前記制御プログラムは、前記スケジューリング手段を、各経路につき、推測される現 在の経路状態に応じてデータの送信を中断するように機能させることを特徴とする請 求項 28に記載のノードの制御プログラム。
[37] 前記データ送信中断の基準が、推定受信完了時刻が特定の値以上であることを特 徴とする請求項 36に記載のノードの制御プログラム。
[38] 前記制御プログラムは、前記スケジューリング手段を、経路選択又は送信中断の判 断を、送信データの属性ごとに異なるポリシーにより行うように機能させることを特徴と する請求項 28に記載のノードの制御プログラム。
[39] 前記制御プログラムは、送信するパケットの宛先アドレスに対応する通信インターフ エースを、通信インターフェースのアドレスと、その通信インターフェースを経由して到 達する宛先アドレスとが関連付けられたテーブル力 選択し、前記送信するパケット に送信元アドレス又は通信インターフェースを指定する情報がある場合には、前記送 信元アドレス又は通信インターフェースに対応する通信インターフェースを前記選択 された通信インターフェースから選択し、選択した通信インターフェースに前記送信 するパケットを送出するルーティング手段として機能させることを特徴とする請求項 28 に記載のノードの制御プログラム。
[40] 送信パケットの到着時刻又は受信完了時刻を推定する送信パケットの時刻推定方 法であって、
送信側ノード側から送信される送信パケットにパケットを識別するパケット識別情報 を付加して送信するステップと、
送信側ノード側にて、送信したパケットの送信履歴をパケット識別情報と共に記憶 するステップと、
受信ノード側にて、経路状態の情報を、この経路状態時に受信した最後のパケット のパケット識別情報を含めて送信側ノードに送信するステップと、
送信側ノード側にて、前記経路状態と、前記経路状態の情報に含まれるパケット識 別情報で特定されるパケット以降に送信されたパケットの送信履歴とに基づいて、送 信しょうとするパケットの到着時刻又は受信完了時刻を推定するステップと を有することを特徴とする送信パケットの時刻推定方法。
[41] ノードであって、 送信パケットにパケットを識別するパケット識別情報を付加して送信する手段と、 送信したパケットの送信履歴をパケット識別情報と共に記録する手段と、 受信側から送信されてくる経路状態の情報を受信し、この経路状態と、この経路状 態が有効となるパケット以降に送信されたパケットの送信履歴とに基づいて、送信し ようとするパケットの到着時刻又は受信完了時刻を推定する手段と
を有することを特徴とするノード。
パケットを送信するノードの制御プログラムであって、
前記制御プログラムはノードを、
送信パケットにパケットを識別するパケット識別情報を付加して送信する手段と、 送信したパケットの送信履歴をパケット識別情報と共に記録する手段と、 受信側から送信されてくる経路状態の情報を受信し、この経路状態と、この経路状 態が有効となるパケット以降に送信されたパケットの送信履歴とに基づいて、送信し ようとするパケットの到着時刻又は受信完了時刻を推定する手段と
して機能させることを特徴とするノードの制御プログラム。
PCT/JP2005/000139 2004-01-09 2005-01-07 負荷分散方法、ノード及び制御プログラム WO2005067227A1 (ja)

Priority Applications (4)

Application Number Priority Date Filing Date Title
JP2005516904A JP4396859B2 (ja) 2004-01-09 2005-01-07 負荷分散方法、ノード及び制御プログラム
US10/526,958 US8098648B2 (en) 2004-01-09 2005-01-07 Load distributing method
CN2005800021702A CN1910870B (zh) 2004-01-09 2005-01-07 负载分散方法、节点和控制程序
EP20050709229 EP1705845B1 (en) 2004-01-09 2005-01-07 Load distributing method

Applications Claiming Priority (6)

Application Number Priority Date Filing Date Title
JP2004004545 2004-01-09
JP2004-004545 2004-07-30
JP2004260245 2004-09-07
JP2004-260245 2004-09-07
JP2005000997 2005-01-05
JP2005-000997 2005-01-05

Publications (1)

Publication Number Publication Date
WO2005067227A1 true WO2005067227A1 (ja) 2005-07-21

Family

ID=34753496

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2005/000139 WO2005067227A1 (ja) 2004-01-09 2005-01-07 負荷分散方法、ノード及び制御プログラム

Country Status (6)

Country Link
US (1) US8098648B2 (ja)
EP (1) EP1705845B1 (ja)
JP (1) JP4396859B2 (ja)
KR (1) KR100811727B1 (ja)
CN (1) CN1910870B (ja)
WO (1) WO2005067227A1 (ja)

Cited By (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2007111331A1 (ja) * 2006-03-29 2007-10-04 Nec Corporation 通信方法、ノード及び制御プログラム
WO2008149970A1 (ja) * 2007-06-06 2008-12-11 Nec Corporation 通信システム、通信ノード及びパケットスケジューリング方法
JPWO2007083687A1 (ja) * 2006-01-23 2009-06-11 日本電気株式会社 通信方法、通信システム、ノードおよびプログラム
JP2010045662A (ja) * 2008-08-14 2010-02-25 Nec Corp 通信回線選択装置、通信回線選択方法、およびプログラム
JP2010200104A (ja) * 2009-02-26 2010-09-09 Kddi Corp トラヒック流量配分方法およびシステム
WO2011114650A1 (ja) * 2010-03-17 2011-09-22 日本電気株式会社 通信ノード装置、通信システム及びそれらに用いる宛先受信インタフェース選択方法
WO2013015114A1 (ja) * 2011-07-25 2013-01-31 ソニー株式会社 通信装置及び通信方法、並びに通信システム
WO2018146892A1 (ja) * 2017-02-09 2018-08-16 オムロン株式会社 通信システム、通信装置および通信方法
US11284461B2 (en) * 2019-05-17 2022-03-22 Samsung Electronics Co., Ltd. Method and apparatus for controlling packet transmission for reducing latency in wireless communication system

Families Citing this family (35)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101317400B (zh) * 2005-12-02 2012-11-14 日本电气株式会社 通信装置、装置启动控制方法和通信控制方法
US7583677B1 (en) 2006-11-03 2009-09-01 Juniper Networks, Inc. Dynamic flow-based multi-path load balancing with quality of service assurances
US8060649B2 (en) * 2007-06-26 2011-11-15 Aruba Networks Cayman Method and system for dynamic metric and wireless hello protocol
US8250256B2 (en) * 2007-07-24 2012-08-21 International Business Machines Corporation Methods, systems and computer products for user-managed multi-path performance in balanced or unbalanced fabric configurations
US20090296737A1 (en) * 2008-06-03 2009-12-03 Ram Arye Method and system for connecting two nodes over multiple communication links
ES2355671B1 (es) * 2009-04-23 2012-02-02 Vodafone España, S.A.U. Encaminamiento de tráfico en una red de comunicación celular.
EP2381621A1 (en) * 2010-04-21 2011-10-26 Thomson Licensing Method for evaluating an available path bitrate based on an acknowledgment path selection
WO2012048975A1 (en) 2010-10-13 2012-04-19 Telefonaktiebolaget L M Ericsson (Publ) Determining asymmetries in a communication network
US8521884B2 (en) * 2010-12-15 2013-08-27 Industrial Technology Research Institute Network system and method of address resolution
WO2012165809A2 (ko) * 2011-06-03 2012-12-06 에스케이 텔레콤주식회사 이기종 네트워크 기반 데이터 동시 전송 서비스 방법 및 장치
CN103380581B (zh) * 2011-06-03 2017-12-05 Sk电信有限公司 收发装置和收发装置的操作方法
KR101437364B1 (ko) * 2011-07-19 2014-09-03 에스케이텔레콤 주식회사 송신장치 및 수신장치와 그 장치의 동작 방법
JP5716587B2 (ja) * 2011-07-19 2015-05-13 富士通株式会社 経路決定装置,経路決定方法,管理プログラム及び管理装置
WO2013091237A1 (en) * 2011-12-23 2013-06-27 Nokia Corporation Method in a serial communication
US9170979B2 (en) * 2012-03-23 2015-10-27 Arm Limited Converging interconnect node controlling operation related to associated future item in dependence upon data predicted based on current transaction data item passing through
CN103716835B (zh) 2012-09-29 2017-06-16 国际商业机器公司 基于多路径传输和接收数据的方法、装置和系统
JP5929682B2 (ja) * 2012-10-09 2016-06-08 富士通株式会社 ネットワーク設計装置、ネットワーク設計方法、ネットワーク設計プログラム
US9344384B2 (en) * 2012-11-13 2016-05-17 Netronome Systems, Inc. Inter-packet interval prediction operating algorithm
US9647905B1 (en) * 2012-12-21 2017-05-09 EMC IP Holding Company LLC System and method for optimized management of statistics counters, supporting lock-free updates, and queries for any to-the-present time interval
CA2845350C (en) * 2013-03-22 2018-12-18 Syscor Controls & Automation Inc. Cable assembly for providing power through inductive coupling
US9893868B2 (en) * 2013-04-04 2018-02-13 Nokia Solutions And Networks Oy Per-protocol data unit delivery-path indication
WO2014207919A1 (ja) * 2013-06-28 2014-12-31 株式会社 東芝 電子機器
US9191330B2 (en) * 2013-11-14 2015-11-17 International Business Machines Corporation Path selection for network service requests
JP2015138990A (ja) * 2014-01-20 2015-07-30 キヤノン株式会社 受信装置、送信装置及び通信システム
EP2945416B1 (en) * 2014-05-13 2018-04-11 Cellxion Limited Method and apparatus for transmission of data over a plurality of networks
CN104363171B (zh) * 2014-10-22 2017-11-24 上海华为技术有限公司 一种用户报文的转发控制方法以及处理节点
CN109565693B (zh) * 2016-05-24 2022-06-03 马维尔以色列(M.I.S.L.)有限公司 用于使用时间复用字段的网络遥测的方法和设备
WO2019026684A1 (ja) * 2017-08-04 2019-02-07 日本電信電話株式会社 経路制御方法及び経路設定装置
US20190260657A1 (en) * 2018-02-21 2019-08-22 Cisco Technology, Inc. In-band performance loss measurement in ipv6/srv6 software defined networks
US11184235B2 (en) * 2018-03-06 2021-11-23 Cisco Technology, Inc. In-band direct mode performance loss measurement in software defined networks
US11218415B2 (en) * 2018-11-18 2022-01-04 Mellanox Technologies Tlv Ltd. Low-latency processing of multicast packets
KR102559552B1 (ko) * 2018-12-17 2023-07-26 한국전자통신연구원 다매체 다중경로 네트워크의 최적 경로 선택 시스템 및 그 방법
EP3716537A1 (de) * 2019-03-25 2020-09-30 Siemens Aktiengesellschaft Verfahren zur datenkommunikation, netzwerkknoten, computerprogramm und computerlesbares medium
KR20200122845A (ko) * 2019-04-19 2020-10-28 삼성전자주식회사 전자 장치 및 그 데이터 전송 제어 방법
CN111760276B (zh) * 2020-07-16 2022-06-14 腾讯科技(深圳)有限公司 游戏行为控制方法、装置、终端、服务器和存储介质

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH057224A (ja) * 1991-04-17 1993-01-14 Mitsubishi Electric Corp パケツト交換網
JP2001007747A (ja) * 1999-06-24 2001-01-12 Kdd Corp 伝送路選択方法および装置
JP2003188907A (ja) * 2001-12-19 2003-07-04 Fujitsu Ltd 移動ip通信におけるルーチング方法及び移動中継装置

Family Cites Families (60)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS5827449A (ja) 1981-08-11 1983-02-18 Nippon Telegr & Teleph Corp <Ntt> パケツト交換の径路選択方式
US5247464A (en) * 1989-05-25 1993-09-21 Digital Equipment Corporation Node location by differential time measurements
JPH03242983A (ja) * 1990-02-06 1991-10-29 Internatl Business Mach Corp <Ibm> 磁気構造体の製造方法
JP3672341B2 (ja) * 1993-07-21 2005-07-20 富士通株式会社 通信網分離設計方式とその管理方式
US5359593A (en) * 1993-08-26 1994-10-25 International Business Machines Corporation Dynamic bandwidth estimation and adaptation for packet communications networks
EP0714192A1 (en) * 1994-11-24 1996-05-29 International Business Machines Corporation Method for preempting connections in high speed packet switching networks
EP0753979A1 (en) * 1995-07-13 1997-01-15 International Business Machines Corporation Routing method and system for a high speed packet switching network
US6400681B1 (en) * 1996-06-20 2002-06-04 Cisco Technology, Inc. Method and system for minimizing the connection set up time in high speed packet switching networks
US5889989A (en) * 1996-09-16 1999-03-30 The Research Foundation Of State University Of New York Load sharing controller for optimizing monetary cost
EP0932949B1 (en) * 1996-10-11 2004-12-22 Sarnoff Corporation Apparatus and method for analyzing bitstreams
US5878026A (en) * 1996-11-19 1999-03-02 At&T Corp. Resource sharing for book-ahead and instantaneous-request calls
US5926463A (en) * 1997-10-06 1999-07-20 3Com Corporation Method and apparatus for viewing and managing a configuration of a computer network
WO1999025085A1 (en) * 1997-11-07 1999-05-20 Visual Networks Technologies, Inc. Method and apparatus for performing service level analysis of communications network performance metrics
JP3665460B2 (ja) * 1997-12-05 2005-06-29 富士通株式会社 分散自律協調型の応答時間チューニングによる経路選択システム、方法、及び記録媒体
JP3599557B2 (ja) * 1998-02-27 2004-12-08 沖電気工業株式会社 処理レート監視装置
US6865160B1 (en) * 1998-05-04 2005-03-08 Hewlett-Packard Development Company, L.P. Broadcast tree determination in load balancing switch protocols
US6594238B1 (en) * 1998-06-19 2003-07-15 Telefonaktiebolaget Lm Ericsson (Publ) Method and apparatus for dynamically adapting a connection state in a mobile communications system
JP3602972B2 (ja) * 1998-07-28 2004-12-15 富士通株式会社 通信性能測定装置及びその測定方法
JP2000049862A (ja) 1998-07-30 2000-02-18 Nippon Denki Ido Tsushin Kk パケット通信網の方路選択方式
US6301244B1 (en) * 1998-12-11 2001-10-09 Nortel Networks Limited QoS-oriented one-to-all route selection method for communication networks
JP3540183B2 (ja) 1999-01-21 2004-07-07 株式会社東芝 マルチリンク通信装置
US6636481B1 (en) * 1999-01-26 2003-10-21 Matsushita Electric Industrial Co., Ltd. Data connecting method, data connecting apparatus, program recording medium
EP1069801B1 (en) * 1999-07-13 2004-10-06 International Business Machines Corporation Connections bandwidth right sizing based on network resources occupancy monitoring
US6580694B1 (en) * 1999-08-16 2003-06-17 Intel Corporation Establishing optimal audio latency in streaming applications over a packet-based network
JP3781928B2 (ja) * 1999-11-11 2006-06-07 富士通株式会社 通信網のパス選択方法及びその装置
US6940831B1 (en) * 1999-11-29 2005-09-06 Matsushita Electric Industrial Co., Ltd Wireless communications system
JP3601393B2 (ja) * 2000-01-11 2004-12-15 日本電気株式会社 データグラム中継装置及びその方法
US6414971B1 (en) * 2000-01-31 2002-07-02 Sony Corporation System and method for delivering data packets in an electronic interconnect
US6873600B1 (en) * 2000-02-04 2005-03-29 At&T Corp. Consistent sampling for network traffic measurement
US6430160B1 (en) * 2000-02-29 2002-08-06 Verizon Laboratories Inc. Estimating data delays from poisson probe delays
JP3575381B2 (ja) * 2000-03-24 2004-10-13 日本電気株式会社 リンクステートルーティング用通信装置及びリンクステートルーティング用通信方法
DE60104353T2 (de) * 2000-04-07 2005-07-21 Ntt Docomo Inc. Verfahren und Einrichtung zur Reduktion des Verzögerungsjitters in der Datenübertragung
US6741569B1 (en) * 2000-04-18 2004-05-25 Telchemy, Incorporated Quality of service monitor for multimedia communications system
JP2001308917A (ja) 2000-04-20 2001-11-02 Yokogawa Electric Corp トラフィック制御装置
JP3511978B2 (ja) 2000-05-18 2004-03-29 日本電気株式会社 優先度制御機能付きルータ及びプログラムを記録した機械読み取り可能な記録媒体
US7240364B1 (en) * 2000-05-20 2007-07-03 Ciena Corporation Network device identity authentication
US6958977B1 (en) * 2000-06-06 2005-10-25 Viola Networks Ltd Network packet tracking
US6707821B1 (en) * 2000-07-11 2004-03-16 Cisco Technology, Inc. Time-sensitive-packet jitter and latency minimization on a shared data link
JP4082858B2 (ja) * 2000-10-30 2008-04-30 富士通株式会社 ネットワークアクセス制御方法及びそれを用いたネットワークシステム及びそれを構成する装置
JP2002176441A (ja) 2000-12-08 2002-06-21 Fujitsu Ltd 通信装置
US6850498B2 (en) * 2000-12-22 2005-02-01 Intel Corporation Method and system for evaluating a wireless link
US6820134B1 (en) * 2000-12-28 2004-11-16 Cisco Technology, Inc. Optimizing flooding of information in link-state routing protocol
JP4511021B2 (ja) * 2000-12-28 2010-07-28 富士通株式会社 トラフィック情報収集装置およびトラフィック情報収集方法
AU2002316128A1 (en) 2001-05-18 2002-12-03 Bytemobile, Inc. Quality of service management for multiple connections within a network communication system
US7012893B2 (en) * 2001-06-12 2006-03-14 Smartpackets, Inc. Adaptive control of data packet size in networks
AUPR580301A0 (en) * 2001-06-20 2001-07-12 Tele-Ip Limited Adaptive packet routing
JP3965283B2 (ja) * 2001-07-02 2007-08-29 株式会社日立製作所 複数種類のパケット制御機能を備えたパケット転送装置
US7082124B1 (en) * 2001-07-10 2006-07-25 Cisco Technology, Inc. Method and apparatus for computing primary and alternate paths in mixed protection domain networks
US7111074B2 (en) * 2001-07-24 2006-09-19 Pluris, Inc. Control method for data path load-balancing on a data packet network
US7376731B2 (en) * 2002-01-29 2008-05-20 Acme Packet, Inc. System and method for providing statistics gathering within a packet network
US7296083B2 (en) * 2002-06-28 2007-11-13 Microsoft Corporation Method and system for measuring load and capacity on a variable capacity channel
US7206861B1 (en) * 2002-07-29 2007-04-17 Juniper Networks, Inc. Network traffic distribution across parallel paths
US7313141B2 (en) * 2002-10-09 2007-12-25 Alcatel Lucent Packet sequence number network monitoring system
US7336618B2 (en) * 2002-10-25 2008-02-26 General Instrument Corporation Method for monitoring performance of network using IP measurement protocol packets
US8296407B2 (en) * 2003-03-31 2012-10-23 Alcatel Lucent Calculation, representation, and maintenance of sharing information in mesh networks
US7457868B1 (en) * 2003-12-30 2008-11-25 Emc Corporation Methods and apparatus for measuring network performance
US7660241B2 (en) * 2004-07-20 2010-02-09 Alcatel Lucent Load balancing in a virtual private network
US7539142B1 (en) * 2004-07-21 2009-05-26 Adtran, Inc. Ethernet LAN interface for T3 network
US7539175B2 (en) * 2004-11-19 2009-05-26 The Trustees Of Stevens Institute Of Technology Multi-access terminal with capability for simultaneous connectivity to multiple communication channels
JP4117291B2 (ja) * 2004-12-28 2008-07-16 インターナショナル・ビジネス・マシーンズ・コーポレーション ネットワーク情報を収集、分析し、ネットワーク構成情報を作成する装置、ネットワーク構成情報を作成する方法、及びネットワーク構成情報を作成するプログラム

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH057224A (ja) * 1991-04-17 1993-01-14 Mitsubishi Electric Corp パケツト交換網
JP2001007747A (ja) * 1999-06-24 2001-01-12 Kdd Corp 伝送路選択方法および装置
JP2003188907A (ja) * 2001-12-19 2003-07-04 Fujitsu Ltd 移動ip通信におけるルーチング方法及び移動中継装置

Non-Patent Citations (1)

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

Cited By (23)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPWO2007083687A1 (ja) * 2006-01-23 2009-06-11 日本電気株式会社 通信方法、通信システム、ノードおよびプログラム
JP4780343B2 (ja) * 2006-01-23 2011-09-28 日本電気株式会社 通信方法、通信システム、ノードおよびプログラム
US8139491B2 (en) 2006-03-29 2012-03-20 Nec Corporation Communication method, node, and control program
WO2007111331A1 (ja) * 2006-03-29 2007-10-04 Nec Corporation 通信方法、ノード及び制御プログラム
WO2008149970A1 (ja) * 2007-06-06 2008-12-11 Nec Corporation 通信システム、通信ノード及びパケットスケジューリング方法
JP2008306321A (ja) * 2007-06-06 2008-12-18 Nec Corp 通信システムおよびそのパケットスケジューリング方法ならびに送信ノード
US8189593B2 (en) 2007-06-06 2012-05-29 Nec Corporation Communication system, communication node, and packet scheduling method
KR101125458B1 (ko) * 2007-06-06 2012-03-28 닛본 덴끼 가부시끼가이샤 통신 시스템, 통신 노드 및 패킷 스케줄링 방법
JP2010045662A (ja) * 2008-08-14 2010-02-25 Nec Corp 通信回線選択装置、通信回線選択方法、およびプログラム
JP2010200104A (ja) * 2009-02-26 2010-09-09 Kddi Corp トラヒック流量配分方法およびシステム
CN103098513A (zh) * 2010-03-17 2013-05-08 日本电气株式会社 通信节点设备、通信系统和选择用于通信系统的目的地接收接口的方法
WO2011114650A1 (ja) * 2010-03-17 2011-09-22 日本電気株式会社 通信ノード装置、通信システム及びそれらに用いる宛先受信インタフェース選択方法
JP2011193408A (ja) * 2010-03-17 2011-09-29 Nec Corp 通信ノード装置、通信システム及びそれらに用いる宛先受信インタフェース選択方法
US9100945B2 (en) 2010-03-17 2015-08-04 Nec Corporation Communication node apparatus, communication system, and method for selecting destination reception interface used therefor
US9912587B2 (en) 2011-07-25 2018-03-06 Sony Corporation Communication apparatus, communication method, and communication system
JP2013026947A (ja) * 2011-07-25 2013-02-04 Sony Corp 通信装置及び通信方法、並びに通信システム
WO2013015114A1 (ja) * 2011-07-25 2013-01-31 ソニー株式会社 通信装置及び通信方法、並びに通信システム
WO2018146892A1 (ja) * 2017-02-09 2018-08-16 オムロン株式会社 通信システム、通信装置および通信方法
JP2018129707A (ja) * 2017-02-09 2018-08-16 オムロン株式会社 通信システム、通信装置および通信方法
KR20190096428A (ko) * 2017-02-09 2019-08-19 오므론 가부시키가이샤 통신 시스템, 통신 장치 및 통신 방법
KR102281617B1 (ko) * 2017-02-09 2021-07-26 오므론 가부시키가이샤 통신 시스템, 통신 장치 및 통신 방법
JP7073624B2 (ja) 2017-02-09 2022-05-24 オムロン株式会社 通信システム、通信装置および通信方法
US11284461B2 (en) * 2019-05-17 2022-03-22 Samsung Electronics Co., Ltd. Method and apparatus for controlling packet transmission for reducing latency in wireless communication system

Also Published As

Publication number Publication date
US8098648B2 (en) 2012-01-17
CN1910870B (zh) 2013-03-27
EP1705845A4 (en) 2010-12-08
EP1705845B1 (en) 2012-08-08
US20070002748A1 (en) 2007-01-04
KR20060101783A (ko) 2006-09-26
EP1705845A1 (en) 2006-09-27
KR100811727B1 (ko) 2008-03-11
CN1910870A (zh) 2007-02-07
JP4396859B2 (ja) 2010-01-13
JPWO2005067227A1 (ja) 2007-12-20

Similar Documents

Publication Publication Date Title
JP4396859B2 (ja) 負荷分散方法、ノード及び制御プログラム
JPWO2005067227A6 (ja) 負荷分散方法、ノード及び制御プログラム
Hong et al. Finishing flows quickly with preemptive scheduling
EP2911348B1 (en) Control device discovery in networks having separate control and forwarding devices
CN113395210B (zh) 一种计算转发路径的方法及网络设备
Wang et al. Adaptive path isolation for elephant and mice flows by exploiting path diversity in datacenters
Carpio et al. DiffFlow: Differentiating short and long flows for load balancing in data center networks
US7902973B2 (en) Alarm reordering to handle alarm storms in large networks
WO2008125030A1 (fr) Procédé de répartition de charge et appareil associé
US20080165685A1 (en) Methods, systems, and computer program products for managing network bandwidth capacity
Pokhrel et al. Fair coexistence of regular and multipath TCP over wireless last-miles
CN A proactive flow admission and re-routing scheme for load balancing and mitigation of congestion propagation in SDN data plane
Bharanidharan et al. An enhanced framework for traffic load balancing and QoS provisioning in SDN
JP2004201304A (ja) 高速パケット網のためのパケットスケジューリングシステム及び方法
Kao et al. An effective routing mechanism for link congestion avoidance in software-defined networking
Zinner et al. Using concurrent multipath transmission for transport virtualization: analyzing path selection
WO2006073066A1 (ja) 通信装置、ルーティング方法及びプログラム
JP4365798B2 (ja) データフレーム転送装置およびデータフレーム転送方法
Chattopadhyay et al. Improving mptcp performance by enabling sub-flow selection over a sdn supported network
Zhang et al. Efficient data center flow scheduling without starvation using expansion ratio
Ren et al. A reactive traffic flow estimation in software defined networks
Singh et al. Modelling switches with internal buffering in software-defined networks
Tajedin et al. DTE: Dynamic traffic engineering in software defined data center networks
KR20010000087A (ko) 고속 통합 서비스망에서 wfq의 에뮬레이션을 통한 공정패킷 스케쥴링 방법 및 그 공정 패킷 스케쥴러
WO2023280004A1 (zh) 一种网络配置方法、设备和系统

Legal Events

Date Code Title Description
ENP Entry into the national phase

Ref document number: 2005526958

Country of ref document: US

Kind code of ref document: A

AK Designated states

Kind code of ref document: A1

Designated state(s): AE AG AL AM AT AU AZ BA BB BG BR BW BY BZ CA CH CN CO CR CU CZ DE DK DM DZ EC EE EG ES FI GB GD GE GH GM HR HU ID IL IN IS JP KE KG KP KR KZ LC LK LR LS LT LU LV MA MD MG MK MN MW MX MZ NA NI NO NZ OM PG PH PL PT RO RU SC SD SE SG SK SL SY TJ TM TN TR TT TZ UA UG US UZ VC VN YU ZA ZM ZW

AL Designated countries for regional patents

Kind code of ref document: A1

Designated state(s): GM KE LS MW MZ NA SD SL SZ TZ UG ZM ZW AM AZ BY KG KZ MD RU TJ TM AT BE BG CH CY CZ DE DK EE ES FI FR GB GR HU IE IS IT LT LU MC NL PL PT RO SE SI SK TR BF BJ CF CG CI CM GA GN GQ GW ML MR NE SN TD TG

121 Ep: the epo has been informed by wipo that ep was designated in this application
WWE Wipo information: entry into national phase

Ref document number: 2005709229

Country of ref document: EP

WWE Wipo information: entry into national phase

Ref document number: 1020067012833

Country of ref document: KR

WWE Wipo information: entry into national phase

Ref document number: 2005516904

Country of ref document: JP

WWE Wipo information: entry into national phase

Ref document number: 200580002170.2

Country of ref document: CN

NENP Non-entry into the national phase

Ref country code: DE

WWW Wipo information: withdrawn in national office

Country of ref document: DE

WWE Wipo information: entry into national phase

Ref document number: 2007002748

Country of ref document: US

Ref document number: 10526958

Country of ref document: US

WWP Wipo information: published in national office

Ref document number: 1020067012833

Country of ref document: KR

WWP Wipo information: published in national office

Ref document number: 2005709229

Country of ref document: EP

WWP Wipo information: published in national office

Ref document number: 10526958

Country of ref document: US