WO2007083687A1 - 通信方法、通信システム、ノードおよびプログラム - Google Patents

通信方法、通信システム、ノードおよびプログラム Download PDF

Info

Publication number
WO2007083687A1
WO2007083687A1 PCT/JP2007/050660 JP2007050660W WO2007083687A1 WO 2007083687 A1 WO2007083687 A1 WO 2007083687A1 JP 2007050660 W JP2007050660 W JP 2007050660W WO 2007083687 A1 WO2007083687 A1 WO 2007083687A1
Authority
WO
WIPO (PCT)
Prior art keywords
packet
control information
leader
block
data
Prior art date
Application number
PCT/JP2007/050660
Other languages
English (en)
French (fr)
Inventor
Tsuneo Nakata
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 US12/161,922 priority Critical patent/US20090059958A1/en
Priority to JP2007554937A priority patent/JP4780343B2/ja
Priority to EP07706964A priority patent/EP1981220A4/en
Publication of WO2007083687A1 publication Critical patent/WO2007083687A1/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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/14Multichannel or multilink protocols
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W28/00Network traffic management; Network resource management
    • H04W28/02Traffic management, e.g. flow control or congestion control
    • H04W28/06Optimizing the usage of the radio link, e.g. header compression, information sizing, discarding information
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/28Timers or timing mechanisms used in protocols
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W28/00Network traffic management; Network resource management
    • H04W28/02Traffic management, e.g. flow control or congestion control

Definitions

  • the present invention relates to a packet communication technique and a multiplexed communication technique.
  • packet data communication digital data is stored in a packet called a packet and transferred over a network.
  • the packet includes a data body to be transferred and a header containing information used for transfer control on the network.
  • the header of the upper layer is included in the data body at the lower layer.
  • Each node in the network that performs packet data communication is equipped with a transfer protocol function that decodes the header of each input packet, edits it as necessary, and sends the same data to the next node.
  • the packet transfer protocol is an asynchronous protocol, and each node transfers different packets on the same network at an arbitrary time. Therefore, packet transfer can be performed at any rate as long as the performance of the sending node allows.
  • TCP which is the fourth layer protocol in the OSI layer model
  • Figure 16 shows an example in which TCP packets are transmitted to the receiving node as well as the transmitting node when IP (Internet 'protocol) is used in the third layer.
  • TCP is a sliding window method to avoid packet delay and loss due to excessive load on the end-to-end connection provided by the third layer and below, and excessive bandwidth pressure on other sessions. (See Non-Patent Document 2 for details).
  • the network is constant. By holding packets that are less than the amount (for example, the amount that can be transmitted before the arrival of an ACK corresponding to the transmitted packet), avoiding a transfer failure due to overload, the bandwidth provided by the lower layer connection Realize effective utilization.
  • the upper limit of the amount of data held in the network is called a window size.
  • a window size proportional to the product of the bandwidth and the round-trip delay in order to effectively use the bandwidth. For example, if the processing delay in the lower layer forwarding node can be ignored and the physical link force on the path can be ignored only in a short-distance wired line, the packet transmission delay is inversely proportional to the bandwidth.
  • the window size can be the same regardless of the bandwidth.
  • a bucket transfer session is set up between the two nodes for each path, and the load is distributed to each session and transferred in parallel to communicate between the two nodes.
  • a demultiplexing technique for wideband transmission For example, a method has been proposed in which a TCP session is set up on each path and transferred in parallel, and the transfer between two nodes is wider than when using a single path (see Non-Patent Document 5 for details). .
  • MIM monitors the speed and delay of each route, but the delay is large! /, And the route including the wireless link has a delay in the feedback of the monitoring result, so refer to the past transmission history that is held. Therefore, the delay when the current packet is transmitted is predicted from the history after the time when the feedback result becomes valid. By performing flow control based on the estimated delay value for each path, jitter is reduced when the paths are multiplexed while effectively using the bandwidth.
  • a packet order control function is implemented so that the order of packets forwarded via different routes is not reversed during forwarding to downstream nodes.
  • the sending node assigns a sequence number to each packet for each flow for which the order is to be stored, and the receiving node arranges the packet order correctly using the received sequence number and transfers it downstream. This is realized.
  • Non-Patent Document 1 RFC793
  • Non-Patent Document 2 Mastering TCP / IP, by Phillip Miller, Ohm Corp. Development Department (1998)
  • Non-Patent Document 4 Kakuzawa et al., ⁇ Realization of arbitration between parallel TCP streams in long distance and high bandwidth communication '', SACSIS 2004.
  • Non-Patent Document 5 Maki, Hasegawa, Murata, Murase, ⁇ Performance Analysis and Evaluation of TCP Overlay Network '', IEICE Technical Report IN04-96 (2004).
  • Non-Patent Document 7 Dovrolis, Ramanathan, and Moore, “What Do PacketDispersion Tech niques Measuere ?, "IEEE INFOCOM 2001)
  • Non-Patent Document 8 Ono et al., “Mobile Internet (3) —Retransmission Control Method 1”, 2004 IEICE General Conference, Paper B-5-165 (2004).
  • Non-Patent Literature 9 L.S.Brakmo and L.L.Peterson, TCP Vegas: ⁇ to End ongestion Avoidance on a Global Internet, IEEE Journal of Selected Areas in Communications, Vol.13, No.8, pl465 (1995).
  • Non-Patent Document 10 Okanoue et al., “Mobile Internet (1) Basic Concept and System Configuration”, 2004 IEICE General Conference, Paper B-5-163 (2004).
  • Non-Patent Document 11 Nakata et al., “Mobile Internet (2) Flow Control Method 1”, 2004 IEICE General Conference, Paper B-5-164 (2004).
  • TCP which has been widely used as a flow control method for conventional packet transfer sessions, uses multiple sessions in order to effectively use the bandwidth in a route having a delay / bandwidth product of a certain degree or more. It is necessary to provide a mechanism that keeps the delay 'bandwidth product that each session should keep by extending
  • this requires complicated control such as load distribution among the sessions.
  • the delay increases in inverse proportion to the bandwidth.
  • the bandwidth of the route changes when the route bandwidth increases as the load on the route increases.
  • Use efficiency can be kept high.
  • the bandwidth of the path changes in a smaller direction, the higher the load on the path, the greater the transfer delay and the more time it takes to feedback, so the time to perform load distribution based on incorrect state recognition increases. Bigger. If an incorrect state recognition occurs in some of the multiple paths, the jitter between the multiple paths will increase, and the packet discard rate or retransmission rate will also increase in the overall communication that combines the multiple paths. Therefore, if the change in the bandwidth of the path is increasing, if the window size is increased and the packet transmission rate is increased, there is a trade-off problem that adversely affects the downward trend.
  • these flow control protocols have a problem in that the bandwidth that can be used for data transfer is high because the occupation rate of the header is high with respect to the data size of the entire packet.
  • the header compression method can be applied.
  • it is necessary for the sending side and the receiving side to share the state variables necessary for compression and decompression.
  • the protocol becomes complicated.
  • the transmitting node determines control information to be included in the header for each transmission packet, and the receiving node performs header reading and analysis for each packet reception.
  • the processing load of the node increases as the transmission / reception data rate increases, and the processing capability of the node determines the maximum transfer rate of the node in a specific protocol.
  • the maximum transfer rate of the node is lower than the bandwidth of the route, and the flow control processing speed that is originally introduced for effective use of the bandwidth of the route is a bottle. As a result, there is a problem that the utilization efficiency of the bandwidth of the route is lowered.
  • an object of the present invention is to provide a communication technique that reduces the load caused by transmission of control information related to a data packet and increases communication efficiency.
  • an object of the present invention is to use a low-delay route or a highly reliable route for a leader packet storing control information when performing packet communication between nodes connected by a plurality of routes. It is to provide a technology that can suppress loss and delay of signaling information by transferring.
  • the packet transmission is controlled based on the control information of the received leader packet.
  • a second invention for solving the above-described problems is the above-mentioned first invention
  • the control information is flow control information.
  • a third invention for solving the above-described problem is the above-described first invention
  • the control information is retransmission control information.
  • a fourth invention for solving the above-described problem is the above first invention,
  • the control information is routing information.
  • a fifth invention for solving the above-mentioned problems is the above-mentioned first invention
  • the control information is route information.
  • a sixth invention for solving the above-mentioned problems is any one of the first to fifth inventions.
  • the control information is control information common to the data packets.
  • a seventh invention for solving the above-mentioned problems is any one of the first to sixth inventions described above.
  • the data packet includes identification information for uniquely identifying a leader packet.
  • An eighth invention for solving the above-described problems is any one of the first to seventh inventions.
  • the reader bucket includes identification information for uniquely identifying a data packet in which control information is collected.
  • a ninth invention for solving the above-mentioned problems is any one of the first to eighth inventions.
  • the plurality of data packets or leader packets are transmitted / received via a plurality of lines.
  • a tenth invention for solving the above-mentioned problem is the above-mentioned ninth invention.
  • the leader packet is transmitted using the fastest line among the plurality of lines.
  • a line on which the leader packet or the data packet is transmitted is selected based on the control information.
  • a twelfth invention for solving the above-described problems is any one of the first to eleventh inventions,
  • the amount of block data to be transmitted based on the control information contained in the received reader packet It is characterized by determining.
  • a thirteenth invention for solving the above-mentioned problems is any one of the first to twelfth inventions,
  • the transmission time of the block to be transmitted is determined based on the control information included in the received reader packet.
  • a fourteenth invention for solving the above-described problems is any one of the first to thirteenth inventions,
  • the speed of the communication path is estimated from the reception time of multiple data packets belonging to the same block.
  • a packet block creating means for handling a plurality of data packets and a leader packet as one block, and collecting control information on the plurality of data packets in the leader packet;
  • a sixteenth invention for solving the above-described problem is the fifteenth invention, in which
  • the control information is flow control information.
  • the control information is retransmission control information.
  • the control information is routing information.
  • a nineteenth aspect of the invention for solving the above-described problems is the fifteenth aspect of the invention.
  • the control information is route information.
  • a twentieth invention for solving the above-mentioned problems is any one of the fifteenth to nineteenth inventions,
  • the packet block creating means collects control information common to the data packets in the leader packet.
  • the data packet includes identification information for uniquely identifying a leader packet.
  • a twenty-second invention for solving the above-described problems is any one of the fifteenth to twenty-first inventions,
  • the reader bucket includes identification information for uniquely identifying a data packet in which control information is collected.
  • a twenty-third invention for solving the above-described problems is any one of the fifteenth to twenty-second inventions.
  • It has transmission means for transmitting the plurality of data packets or leader packets via a plurality of lines.
  • a twenty-fourth aspect of the present invention for solving the above-described problem is the above twenty-third aspect of the invention.
  • the scheduling means controls to transmit the leader packet using the fastest line among the plurality of lines.
  • the scheduling means selects a line for transmitting the leader packet or the data packet based on control information.
  • a twenty-sixth aspect of the present invention for solving the above-mentioned problems is any one of the fifteenth to twenty-fifth aspects of the invention.
  • the scheduling means determines a data amount of a block to be transmitted based on control information included in the received leader packet.
  • a twenty-seventh aspect of the present invention for solving the above-mentioned problems is any one of the fifteenth to twenty-sixth aspects of the invention.
  • the scheduling means determines a transmission time of a block to be transmitted based on control information included in the received leader packet.
  • a twenty-eighth aspect of the present invention for solving the above-described problems is any one of the fifteenth to twenty-seventh aspects of the present invention, It has a packet analysis unit that estimates the speed of a communication path from the reception time of a plurality of data packets belonging to the same block.
  • a twenty-ninth invention for solving the above-mentioned problems is
  • a packet block creating means for handling a plurality of data packets and a leader packet as one block, and collecting control information on the plurality of data packets in the leader packet;
  • a thirtieth invention for solving the above-described problem is the above-mentioned twenty-ninth invention.
  • the packet block creating means collects control information common to the data packets in the leader packet.
  • a thirty-first invention for solving the above-mentioned problems is characterized in that, in the above-mentioned twenty-ninth or thirtieth invention, identification information for uniquely identifying a leader packet is included in the data packet.
  • a thirty-second invention for solving the above-described problems is any one of the twenty-ninth to thirty-first inventions,
  • the reader bucket includes identification information for uniquely identifying a data packet in which control information is collected.
  • a thirty-third invention for solving the above-mentioned problems is as described in any one of the twenty-ninth to thirty-second inventions,
  • It has transmission means for transmitting the plurality of data packets or leader packets via a plurality of lines.
  • the thirty-fourth invention for solving the above-mentioned problems is the above-mentioned thirty-third invention.
  • the scheduling means controls to transmit the leader packet using the fastest line among the plurality of lines.
  • the scheduling means is a control grouped in a leader packet received from another node. Based on the control information, a line for transmitting the leader packet or the data packet is selected.
  • a thirty-sixth aspect of the present invention for solving the above-described problems is the invention according to any one of the twenty-ninth to thirty-fifth aspects of the invention.
  • the scheduling means determines a data amount of a block to be transmitted based on control information included in a leader packet received from another node.
  • a thirty-seventh aspect of the present invention for solving the above-described problems is the invention according to any one of the twenty-ninth to thirty-sixth aspects of the invention.
  • the scheduling means determines a transmission time of a block to be transmitted based on control information included in a leader packet received from another node.
  • a thirty-eighth aspect of the present invention for solving the above-described problems is any one of the twenty-ninth to thirty-seventh aspects of the invention.
  • It has a packet analysis unit that estimates the speed of a communication path from the reception time of a plurality of data packets belonging to the same block.
  • a packet block creation process in which a plurality of data packets and a leader packet are treated as one block, and control information related to the plurality of data packets is collected in the leader packet;
  • a plurality of data packets and a reader packet are made into one block, the control information of the plurality of data packets is collected into the reader packet, and based on the control information of the reader packet, Control the transmission of packets. For this reason, since the control information can be known at the node at an early stage, it becomes possible to perform signaling at high speed.
  • the present invention provides a packet block between two nodes that can select one or more routes. By feeding back the results of route state estimation based on the received sequence, flow control and load distribution based on more accurate route state estimation than the conventional example can be realized.
  • the processing load is reduced compared to the conventional example in which the flow control and the route selection process are performed for each transmission packet. .
  • the present invention aggregates the flow control information, load distribution information, ARQ information, and order control information of each route into a leader packet, and transmits it as the head of the block from the lowest delay route or the highly reliable route. By doing so, the loss and delay of signaling information can be suppressed, and the trade-off between bandwidth utilization efficiency when the path bandwidth is increasing and control tracking when the path bandwidth is decreasing can be mitigated.
  • the receiving node can predict the packet reception sequence in the block based on the information of the reader, if it is different from the prediction, it is determined that the communication is abnormal, thereby early detection of the communication abnormality. Is possible.
  • the transfer of data in the sequence control buffer is not held for a longer time than necessary, and end-end jitter is improved.
  • the present invention achieves header information reduction with a simpler implementation than the conventional header compression example that requires state information sharing between the transmission side and the reception side.
  • FIG. 1 is a system configuration diagram showing a first embodiment of the present invention.
  • FIG. 2 is a configuration diagram of a leader packet according to the present invention.
  • FIG. 3 is a configuration diagram of a data packet according to the present invention.
  • FIG. 4 is an example in which a flow control algorithm (PAC scheduler) is applied to the first embodiment of the present invention.
  • PAC scheduler a flow control algorithm
  • FIG. 5 is a flowchart followed by the scheduling unit.
  • FIG. 6 is a flowchart followed by the packet creation unit.
  • FIG. 7 is a system configuration diagram showing a second embodiment of the present invention.
  • FIG. 8 is an example in which a flow control algorithm (PAC scheduler) is applied to the second embodiment of the present invention.
  • FIG. 9 is an example in which the feedback period of the second embodiment of the present invention can be shortened.
  • FIG. 10 is an example in which the speed estimation accuracy of the second embodiment of the present invention is kept constant.
  • FIG. 11 is a diagram for explaining a third embodiment of the present invention.
  • FIG. 12 is a diagram for explaining a fourth embodiment of the present invention.
  • FIG. 13 is a diagram for explaining a fifth embodiment of the present invention.
  • FIG. 14 is a diagram for explaining the outline of the present invention.
  • FIG. 15 is a diagram for explaining the outline of the present invention (when there are three or more data packets).
  • FIG. 16 is a diagram for explaining the outline of a conventional invention.
  • FIG. 14 shows a state in which the packet transfer according to the present invention is performed from the transmission node 001 to the reception node 002.
  • TCP which is the fourth layer protocol of the prior art, as shown in FIG.
  • the packet is composed of the IP header, TCP header, and payload in that order from the top.
  • TCP when multiple packets are transmitted simultaneously or within a short time that the control information does not change, the TCP header control information assigned to each packet is all equal.
  • the control information when a plurality of packets are transmitted simultaneously or within a short time such that the control information does not change, the control information is stored only in the header for the first leader packet 003, and the present invention
  • An IP header indicating the destination node is attached to the reader packet header as in the conventional case, and a reader packet comprising the IP header and the reader packet header of the present invention is first transmitted.
  • leader packet 003 data packets 004 and 005 including the data packet header of the present invention having a smaller amount of information than the leader packet header are transmitted.
  • the control information stored in the header of each packet is stored in the header of the leading reader packet 003, and the time required to receive the packet 003 is the same as that of the conventional packet.
  • the time required for receiving 0040 is shorter. Therefore, the receiving node can know the control information (for example, ACK information) earlier than the conventional packet transfer method. As a result, signaling based on the control information can be performed at high speed.
  • each data packet 004a, 005a, 006a is given a fourth layer header with the same data amount that is duplicated
  • control information corresponding to the overlapping portion of each packet header in the conventional example is stored together in the header of the leading leader packet 003a, and each data packet is lighter than the TCP header.
  • the header is assigned as the 4th layer header.
  • the information that has been duplicated in a number of packets in the past is represented as a leader packet, so that the amount of signaling information by the header is kept equal to that of TCP.
  • the total header size of all packets can be reduced compared to TCP. As a result, it is possible to improve the transmission efficiency of the entire packet transmission.
  • one leader packet is created for many packets.
  • a further effect of sending packets is that the accuracy of path speed measurement is increased.
  • Speed is a measurable force with at least two packets. The more packets, the higher the scheme.
  • Another reason is that, as the number of packets included in a packet block increases, the difference between the reception times of the beginning and end of a packet related to one measurement increases, which is required by the receiving node. This is because the time resolution may be large, and if the nodes have the same time resolution, the speed system is improved by using the packet block of the present invention.
  • FIG. 1 shows a first embodiment of the present invention.
  • packets are transferred between the forwarding node 101 and the forwarding node 102 using the packet forwarding method of the present invention. Since this embodiment assumes a bidirectionally symmetric protocol, the configuration of the forwarding node 101 and the forwarding node 102 is the same. In the following, the power to explain the packet transfer from the forwarding node 101 to the forwarding node 102 as an example.
  • the transfer node 101 also receives data to be transferred to the transfer node 102 as well as data generation means such as a user application on another node or the same node, and stores it in the buffer unit 201.
  • Scheduling section 202 controls transmission based on scheduling information stored in storage section 205. For example, when the time for packet transmission and the configuration of a data packet (hereinafter referred to as a packet group) to be transmitted following the leader packet are determined as described later, and the time for packet transmission is reached, the packet block The creation unit 203 is notified of the configuration of the leader packet and the packet group. The packet block creation unit 203 notified of the configuration of the leader packet and the packet group collects the control information of the data packet into the leader packet.
  • a packet group data packet
  • a number of data based on the notified configuration is extracted from the buffer unit 201, and predetermined header information is added to each of the extracted data to create a packet group.
  • predetermined header information is added to each of the extracted data to create a packet group.
  • a set of packets transmitted at this time is hereinafter referred to as a packet block.
  • the packet transmission unit 204 sequentially transfers the packets passed from the packet block creation unit 203 to the packet reception unit 206 in the transfer node 102.
  • 300-1 is a schematic diagram of a packet block on the communication path transmitted from the packet transmission unit 204, and shows that a plurality of data packets 301 follow the leader packet 302.
  • the packet analysis unit 207 extracts predetermined information from the packet block 300-1 as described later, performs predetermined measurement on the received packet as described later, and stores the result in the storage unit 205 as flow control information. .
  • the packet data that has been processed by the analysis unit 207 is sequentially transferred to the packet transfer unit 208, and the packet transfer unit 208 receives the data received from the packet analysis unit 207 as the next transfer node or a user application in the same node, etc. To the data receiving means.
  • the scheduling unit 202 in the forwarding node 102 performs the same operation as the scheduling unit 202 in the forwarding node 101, based on the scheduling information stored in the storage unit 205, and the time and packet to be transmitted.
  • the county configuration is determined as described later, and when the time for packet transmission is reached, the packet block creation unit 203 is notified of the configuration of the leader packet and the packet county.
  • the packet block creation unit 203 in the forwarding node 102 creates a leader packet based on the notified configuration and the flow control information stored in the storage unit 205, and together with the data stored in the nota unit 201, the packet block 300- 2 is transmitted to the packet receiving unit 206 in the forwarding node 101 via the packet transmitting unit 204. After transmission, the transmission history is stored in the storage unit 205.
  • the packet analysis unit 207 in the forwarding node 101 extracts predetermined information from the packet block 300-2 and performs predetermined measurement on the received packet, The result is stored as flow control information 2
  • the data is stored in 05 and the scheduling unit 202 is notified that the flow control information has been updated.
  • the scheduling unit 202 similarly updates the scheduling information stored in the storage unit 205 based on the updated flow control information. Subsequent packet transmission timing and packet block configuration are determined based on the updated scheduling information.
  • FIG. 2 shows an example of the structure of the leader packet used in the present invention.
  • the present invention can be implemented as a protocol on any communication layer.
  • the protocol is assumed to be implemented as a fourth layer protocol, and an example of the structure when the lower layer transfer protocol is IP is shown.
  • the leader packet in this embodiment is included in the header for block management information and flow control information S leader packet following the leading IP header.
  • the structure of the data packet is shown in Fig. 3.
  • the block management information is included in the data packet header and the data body is included in the payload.
  • the block management information is attribute information generated by the transmitting side node, such as the number of packets in the packet block and the priority of the packet.
  • the block management information is identification information for uniquely identifying a reader packet. That is, it is information for identifying the packet block to which each data packet belongs.
  • the transmitting node assigns a unique sequence number to each packet block, which is used as block management information.
  • Each packet in the block is sequentially transmitted starting from the leader packet (passed from the packet block creation unit 203 to the packet transmission unit 204).
  • the time stamp at the time of transmission and the sequence of packets belonging to the packet block are assumed.
  • the range of numbers is used as block management information.
  • the receiving node measures the delay and describes the packet train method described in non-patent literature (total data amount Z based on the difference in reception time between the last packet and the first packet).
  • the bandwidth of the communication path is estimated by the above method.
  • the identification information for uniquely identifying the data packet in which the control information is collected may be included in the reader bucket to secure the relationship between the leader packet and the data packet group.
  • the packet analysis unit 207 in the forwarding node 102 receives the reader packet 302 of the packet block 300-1 from the packet reception unit 206, the packet analysis unit 207 receives the packet from the block management information. Extracts the range of timestamps and sequence numbers for the first block 300—1. Further, the difference between the reception time and the extracted time stamp is written in the storage unit 205 as a path delay estimation result.
  • the subsequent data packet 301 is received, if the sequence number is within the sequence number range of the packet block 300-1, the data size is stored.
  • the total packet size of the received data packet in the packet block is calculated by the difference between the reception time of the packet and the reception time of the reader packet.
  • the divided one is written in the storage unit 205 as the estimated bandwidth of the communication path.
  • the flow control information (path delay estimation result and path bandwidth estimation result) recorded in the storage unit 205 by the packet analysis unit 207 in the forwarding node 102 by the above operation is also transmitted to the forwarding node 101.
  • the packet is stored in the reader packet of the packet block 300-2 to be sent to the storage unit 205 via the packet analysis unit 207 in the forwarding node 101.
  • the flow control information update is notified to the scheduling unit 202, and the scheduling unit 202 that receives the notification notifies the updated flow control information.
  • the scheduling information is updated using the estimation result of the path delay and the estimation result of the path bandwidth, and thereafter, a packet block is configured based on the updated scheduling information.
  • the reader packet 302 transmitted from the forwarding node 102 to the forwarding node 101 includes Ack information similar to that used in TCP and the reception window size (the amount of data that can be consulted determined on the receiving node side).
  • the forwarding node 101 that has received this leader packet 302 performs transmission processing to the forwarding node 102 in the following procedure.
  • the packet analysis unit 207 The Ack content included in the packet 302 is recorded in the storage unit 205, and the storage unit 205 notifies the scheduling unit 202 of a new Ack reception event.
  • the scheduling unit 202 can transmit the difference between the reception window size extracted from the received leader packet and the data amount of the packet transmitted after the ACKed packet extracted from the transmission history recorded in the storage unit The data amount is notified to the packet block generation unit 203.
  • the packet block generation unit 203 extracts the maximum amount of data from the buffer unit so that the packet block size including the leader packet 302 does not exceed the amount of data that can be transmitted, and adds block management information to each data. Create a data packet. Also, a leader packet including Ack information and block management information is created, and a packet block having both powers is passed to the packet transmission unit 204. If the transmittable data amount is less than the predetermined lower limit, packet block creation is suspended until the next notification of the transmittable data amount from the scheduling unit 202.
  • the transmission history is recorded in the storage unit 205.
  • the reception window size used by the forwarding node 101 is determined from the route speed estimated when the packet analysis unit 207 of the forwarding node 102 receives the packet block from the forwarding node 101.
  • the value of the reception window size is given by, for example, a product of a predetermined maximum round-trip delay and an estimated speed.
  • an upper limit based on the remaining amount of the reception buffer may be separately provided, and if it is less than this upper limit, a value based on the estimated speed may be used to determine the reception window size.
  • the node processing load is reduced by having the information represented by a leader packet, which is conventionally held redundantly in a plurality of buckets.
  • header size reduction effect occurs.
  • the round-trip delay time is controlled to be less than or equal to the predetermined maximum round-trip delay time regardless of the path speed difference between the forward path and the return path.
  • delay dispersion is reduced compared to conventional window control for paths with speed fluctuations.
  • the window size is obtained directly using the speed estimation results, there is a feature that the bandwidth can be effectively used even on a route with large loss and delay variation. This is an advantage over Non-Patent Documents 1 and 9.
  • Non-Patent Documents 1 and 9 the smaller of the congestion window size and the reception window size on the transmission side is adopted as the window size, so control is performed to reduce the window size when packet loss occurs. End up.
  • the window size is determined using the speed estimation result, and therefore the window size itself is not affected! Can be used.
  • the leader packet may include the speed estimation result instead of the reception window size, and the window size calculation may be performed by the packet analysis unit 207 of the transmission side node. Furthermore, it is also possible to divide the amount of transmittable data calculated at the time of receiving the reader packet into multiple packet blocks that do not send all at the same time, and send them over a transmission interval that also determines the estimated speed power! / ⁇ . However, the transmission interval at this time needs to be an interval at which the packet block transmitted earlier and the packet block transmitted later also contact on the route. In addition, by dividing and transmitting the bucket block in this way, the size of the burst sent to the path is reduced, so the effect of lowering the packet loss probability can be expected.
  • Non-Patent Document 6 a method using the PAC scheduler method disclosed in Non-Patent Document 6 will be described.
  • the basic operation of the PAC scheduler at the sending node is to predict the current route delay based on the delay and estimated speed fed back from the receiving node, and the transmission history after the packet used to measure the route state. Then, the next packet is transmitted at a time when the predicted delay is less than a predetermined threshold.
  • An example of the flow control protocol operation when this is applied to the packet block transfer method is described with reference to FIG.
  • the “101 time” number line represents the time on forwarding node 101
  • the “102 time” number line represents the time on forwarding node 102.
  • the forwarding node 101 transmits the packet block 300-a at time ts (a), and the head thereof reaches the forwarding node 102 at time tb (a).
  • tb (a) means the time when the head of the packet block 300-a reaches the receiving node when there is no load.
  • the head of packet block 300-a reaches node 102 only with a delay at no load.
  • the estimated speed calculated from the reception time of the leader packet 302-a and the data packet 301-1 and the leader packet 302 -a The time stamp installed in a and the delay information estimated from the reception time of the forwarding node 102 are transmitted to the forwarding node 101 from the forwarding node 102 to the forwarding node 101 in ts (l).
  • the node 101 is notified by accommodating the node 101.
  • the node 101 After the packet block 300-a, the node 101 considers that the bandwidth of the path is constant and transmits the packet block 300-b. After transmitting packet block 300-b, the path information (estimated speed and delay) is updated by receiving 302-f. Since this is information before time T, node 101 still has the path bandwidth when 300-a is transmitted. Similarly, it is determined that there is no load, and packet block 300-c is transmitted at time ts (c). At this time, the node 101 determines time ts (c) by the following method. That is, the packet block 300 obtained from the route information (estimated speed and delay) included in the received packet 302-f and the transmission history after the packet block 300-a used for measurement of the route information. The time c) at which the head of -c is predicted to be received is determined as the same or earlier than the value obtained by adding the threshold th to the predicted arrival time tb (c) at no load.
  • the predicted no-load arrival time tb (c) is the estimated time when the packet arrives at the receiving node 102 when the packet is transmitted with no load at ts (c). is there. Therefore, at the time of ts (c), the node 101 expects the beginning of the packet block 300-c to reach tb (c) + th.
  • the size of the packet block 300-c is determined so that the predicted arrival time at the end is within tb (c) + to where tb (c) includes the maximum surplus delay to.
  • the maximum surplus delay indicates a threshold value that prevents packet transmission from a route that is expected to have a longer delay.
  • the path r of the packet P is used until the transmission time-the predicted arrival time when the transmitting node transmits the packet P from the path r reaches the transmission time after the transmission time-to. Do not send. Conversely, packets can be sent immediately from the route that is the predicted arrival time and the current time to.
  • the propagation delay of packet block 300-b is larger than the prediction of node 101.
  • the start is delayed until tf '(c), and the reception completion time of the last data packet 301-9 is delayed from the predicted tb (c) + to, and becomes (d).
  • Node 102 transmits packet block 300-g to ts (g), and this leader packet 302-g receives packet block 300-b. More detected route information (that is, information in which the route bandwidth is reduced) is included.
  • node 101 knows that the bandwidth of the route has been reduced by receiving packet 302-g, so it updates the route information accordingly, and the next packet block 300 that was scheduled to be transmitted to ts (d) before the update is updated. Change the transmission time of -d to ts, (d).
  • the size of the packet block sent from node 101 to 102 is also 300-b,
  • the above determination is based on the updated route information and transmission history, and the predicted arrival delay d) at the beginning of the block is equal to or less than tb (d) + th, and the predicted arrival time at the end is tb. (d) This is the result of calculating the transmission time and block size so that it is less than + to. Actually, the route state fluctuates between ts (g) and after (d), so in the figure, if the time when the head actually arrives, (d) is deviated from d).
  • the PAC scheduler performs transmission timing control so as to correct the deviation of the predicted arrival time, and achieves both effective use of bandwidth and delay suppression.
  • the window control described above provides control over the round trip delay
  • the PAC scheduler further measures and hoods back the delay for each one-way path, so that each path has a different path status. There is an advantage that appropriate control can be performed. For example, when the return path band is large with respect to the current load and the return path band is small with respect to the current load, only the increase in the return path delay increases.
  • the sending node on both the forward path and the return path reduces the load on the path, and as a result, the bandwidth of the forward path cannot be used effectively.
  • the outbound and inbound delays are monitored separately at this time, it will be understood that it is necessary to reduce the load on the outbound path, so the outbound bandwidth can be used effectively.
  • FIG. 5 shows a flow chart followed by the scheduling unit 202 to realize the operation of the flow control protocol
  • FIG. 6 shows a flowchart followed by the packet block creation unit 203.
  • the scheduling unit 202 determines the time when the packet block can be transmitted next and the block size each time the storage content of the storage unit 205 is updated, and notifies the packet block creation unit 203 of the time.
  • FIG. 5 will be specifically described.
  • the processing of S51 when the path state information or the packet transmission history information is updated from the storage unit 205, the notification is received.
  • the predicted arrival time at the beginning of the next packet to be transmitted is the predicted arrival time at no load.
  • the next packet transmission time (tl) is calculated so as to be equal to the time obtained by adding the threshold (th) to (tb) (S52).
  • the amount of data (d) that is predicted to cause the propagation delay of the maximum surplus delay to is calculated from the latest transmission path state information (S53).
  • the packet transmission time (tl) and the data amount (d) obtained as described above are notified to the packet block creating unit 203 (S54), and the process is terminated.
  • the packet block creation unit 203 configures a packet block having a size not larger than the block size notified from the scheduling unit 202.
  • the data is passed to the transmission unit 204.
  • Fig. 6 there are two types of power starting from wait and idle. This is because the process of “transmitting a packet block at the time when transmission is possible” is realized with the aid of a timer. is there. While waiting for the timer to expire, the scheduling unit 202 remains in the wait state. On the other hand, the idle state does not wait for the timer and does not receive any data to be processed.
  • FIG. 6 will be described below.
  • the idle state will be described.
  • a “new packet reception notification is received from the buffer unit 201” (S61) or “update notification of packet transmission time (tl) and data amount (d) is received from the scheduling unit 202” If so (S62), the process is started.
  • the process it is first determined whether the packet transmission time (tl) ⁇ present (S63). If the result of this determination is No, the timer is started so as to expire at the time, the processing is terminated (S64), and a wait state is entered. If the determination result in S63 is Yes, a leader packet including the latest reception path state information and Ack information is created (S65).
  • the buffer unit 201 also takes out the maximum amount of data for which the header power packet block size of the notafer is equal to or smaller than the data amount (d), and creates a data packet group (S66).
  • the leader packet and the data packet group are transmitted to the packet transmission unit 204 (S67).
  • the transmission record is stored in the storage unit 205. Write (S68) ends. Return to Udle state.
  • the notification to the scheduling unit 202 when the storage contents of the storage unit 205 are updated is the power that the storage unit performs. This is indicated by the packet analysis unit 207 and the packet block creation unit 203. Alternatively, the same operation is realized even when the packet transmission unit 204 performs.
  • the leader packet 302-b of the packet block 300-b is received at an interval from the end of reception of the immediately preceding packet block 300-a, so there is no load. Arrived in state. When such an interval is detected, forwarding node 102 forwards no-load delay detection by including information indicating that packet 302-b has arrived without load in leader packet 302-g addressed to the transmitting node. Tell node 101.
  • the forwarding node 101 Upon receiving the leader packet 302-g, the forwarding node 101 updates the no-load path delay value to the delay of 302-b.
  • a no-load delay value is used periodically. For this reason, if no load delay is detected for more than a certain time, the excess delay th, which is the block transmission threshold, is set to a negative value to forcibly induce no-load transfer. Thus, a load path delay value in a cycle within a certain time can be realized. For this reason, the path is completely loaded as th 0, creating a state in which data can be transmitted only in the state.
  • each of the components in the forwarding nodes 101 and 102 feeds back the monitoring result of the delay and speed of the communication path and performs the packet flow rate control. Packet transmission considering (estimated speed and delay) is possible.
  • the signaling information is aggregated into the leader packet and communicated in this way, both the extraction of the flow control information on the receiving side and the updating of the scheduling information on the transmitting side can be performed as in the conventional example. Since it is performed at the frequency of packet block transmission / reception that is not performed at the same frequency, the processing load on the forwarding node is reduced.
  • the signaling information is omitted from the data packet and aggregated into the leader packet. There is an effect of keeping the total of
  • high-accuracy route bandwidth estimation using the packet train method can be performed using a dedicated probe packet (dummy packet) that is used only for speed measurement without impairing bandwidth utilization efficiency.
  • the estimated speed cannot be obtained if the bottleneck bandwidth of the path is equal to or higher than the transmission speed.
  • an application power path that requires a specific speed can be transferred at a speed higher than that speed. It can be determined whether or not. The reason is that when the reception rate is lower than the transmission rate, the transfer rate is limited by the path speed, and the speed can be measured. Even if this is not the case, it is clear that the route speed is equal to or higher than the transmission rate (because there is no link with a lower rate than the transmission rate on the route). By keeping the transmission speed below a certain level, the load on the path can be reduced compared to the case of simultaneous transmission. Therefore, the possibility of packet loss due to excessive load can be reduced.
  • flow delay and bandwidth monitoring information (route information) is included as flow control information, but reception confirmation information and the like may also be included. For example, if the reception confirmation of the leader packet and reception within the corresponding packet block are included, and the identification information (retransmission control information) of the data packet is included, the packet to be retransmitted by the transmission side can be accurately identified.
  • leader packet When a leader packet is lost, for example, information indicating the loss of the leader packet and Ack information based on a sequence number similar to that used in TCP are used together to maintain transmission integrity. Be drunk. For example, if a sequence number is also assigned to the leader packet so that the receiving side returns Ack information, the sender side resends the bad packet so that both the leader packet and the data packet can be transferred without loss. Can be guaranteed.
  • a single leader packet may be used. In that case, you may create a clone of the same packet, or you may combine multiple reader packets to cover the block control information for the entire block.
  • the leader packet in the present invention may include a data body when the packet block is composed of a plurality of data packets, and the block management information is an existing identifier for identifying the packet in the block. For example, when the Identification field in the IP header is used, the block management information is not required for the data packet.
  • the reader packet which is a feature of the present invention, includes the intra-block packet and the reader packet, except for the limitations that "the reader packet does not include user data" and "the data packet includes block cost management information". This is because it is possible to give information that can identify the flow control information generation method from them, and to generate flow control information according to the packet block to which the received packet belongs at the receiving node.
  • the above control information may be routing information! /.
  • a packet block is configured and transmitted only when periodic line monitoring is performed. Each data packet may be transmitted alone until the time.
  • FIG. 7 shows the configuration of the transfer nodes 101 and 102 used in this embodiment.
  • the configuration of the forwarding node 101 is the same as that of FIG. 1 used in the first embodiment.
  • the forwarding node 102 has a plurality of packet receiving units 206 and a packet transmitting unit 204.
  • the IP network 400 between the forwarding nodes 101 and 102 also provides a route to the packet receiving unit 206-1 of the forwarding node 102 and a route to the packet receiving unit 206-2.
  • Each path generally includes physically separated links, and the bandwidth and delay vary independently of each other.
  • the bandwidth and delay of the path from the packet transmitting unit 206-1 of the forwarding node 102 to the packet receiving unit 204 of the forwarding node 101 and the route from the packet receiving unit 204-2 also vary independently of each other. Let's say.
  • This embodiment is an application example of the present invention to the case where there are a plurality of selectable paths between two nodes as described above.
  • the packet structure and signaling mechanism for flow control in this embodiment are the same as in the first embodiment, but the contents of flow control information and scheduling information, and the configuration of packet blocks are different from those in the first embodiment.
  • the packet block in this embodiment includes a data packet sent to each of a plurality of paths and one or more reader packets.
  • the sequence number is given for each route
  • the leader packet includes a time stamp as block management information and a sequence number range of packets in the packet block for each route.
  • the delay and speed estimation by the packet analysis unit 207 is also performed for each path.
  • the flow control information on the leader packet includes the delay and speed estimation results for each route.
  • Packet blocks 300-1 and 300-2 shown in Fig. 7 are examples in which there are two selectable routes and one leader packet.
  • the packet block creation unit 203 creates one packet block for a plurality of routes, and the packet transmission unit 204 sends out each packet in the block via the route designated by the packet block creation unit 203.
  • Route bandwidth estimation by the packet train method is possible when two or more packets are transmitted simultaneously on the route or at a transmission rate that is equal to or higher than the bottleneck bandwidth of the route. To do this, it is necessary to send two or more packets from each route in one packet block. For this reason, the packet sent as a result of packet block configuration A dummy packet is transmitted along with the packet to be transmitted for the route that has become a si force. The contents of the dummy packet need only be a sequence number, for example.
  • the flow control algorithm used in the present embodiment can be extended and applied.
  • the window control method described as an example of the first flow control algorithm in the first embodiment is extended as follows in the second embodiment.
  • the Ack information of all routes and the reception window size are included in the leader packet.
  • the scheduling unit 202 of the transfer node that has received the leader packet calculates the transmittable data amount of each path as shown later and notifies the packet block generation unit 203 of it.
  • the packet block generation unit 203 extracts the data in the buffer unit so that each path part of the packet block does not exceed the transmittable data amount! /, And determines the allocation to each path.
  • the transmittable data amount does not satisfy the predetermined lower limit, data is not allocated to the route.
  • the leader packet is assigned to the route with the largest amount of data that can be transmitted.
  • the same leader packet may be assigned to other routes for redundancy.
  • a dummy packet is also assigned to a route that cannot be assigned with one packet including the leader and data.
  • the allocation route for each packet in the block is determined, all the packets in the block are passed to the packet transmission unit 204 together with the allocation information.
  • the packet information passed to the packet transmission unit 204 is recorded in the storage unit as a transmission history.
  • the reception window size in the receiving side node is determined in the same manner as in the first embodiment.
  • the PAC scheduler method described as an example of the second flow control algorithm in the first embodiment is extended as follows in the second embodiment.
  • the operation when two paths are included will be described with reference to FIG. In Fig. 8, there are two time lines corresponding to the two routes, and the arrival prediction sequences of packets passing through each route are shown.
  • tb, b, th, and to are shown as tb (n), n), th (n), and to (n), respectively, and their meanings are shown in FIG.
  • the transmitting node can transmit a packet block for any route if tb (n) + th (n) tn). In Fig. 8, tb (l) + th (l) (1), so transmission is possible immediately.
  • Scheduling section 202 calculates the estimated arrival time of leader packet 302 for each route, and configures a packet block to transmit leader packet 302 to the route predicted to arrive earliest.
  • route 2 is selected as the leader packet transmission route.
  • the data size of the first packet 301-1 in the buffer unit 201 is acquired, and placed in the route predicted to arrive earliest when transmitted together with the reader packet.
  • the first data packet 301-1 is routed to route 1.
  • increase the number of packets in the block one by one and arrange them in the same way, and for each route, find the maximum number of transmitted packets so that the sum of the transmitted packet sizes is less than tb (n) + to (n).
  • the packet block configuration is determined.
  • a packet block 300 including five data packets 301-1 to 301-5 including path 1 and 2 is configured! /.
  • the packet reception power flow that is not limited to the transmission delay of the flow control information. Includes waiting time before sending control information
  • this waiting time is the maximum block transmission interval, the node processing load is reduced, the accuracy of route bandwidth estimation in the bucket train method, and the amount of data buffered on the route for effective use of bandwidth exceeds a certain level. Increasing the amount of allocation to each path per block for the purpose of maintaining, etc., increases the flow control information feedback delay.
  • the “101 time” number line represents the time on the forwarding node 101
  • the “102 time” number line represents the time on the forwarding node 102.
  • route 1 and route 2 there are two routes, route 1 and route 2, between forwarding node 101 and forwarding node 102, and for the packet passing through each route, the receiving sequence on forwarding node 102 by forwarding node 101 is The predictions are shown on the “Route 1 Reception Prediction” and “Path 2 Reception Prediction” lines.
  • Each packet block basically consists of only one route.
  • the block size of the packet block of each route is determined so that the transmission delay of the packet in the block is constant, that is, the block of all routes (the sum of the packet sizes contained in the block / route speed) is the same. It is.
  • each packet block is transmitted by shifting the block transmission period ti defined by the number of paths that can be used for the transmission delay Z signaling of the intra-packet packet, and this is the leader packet transmission period.
  • the arrival of the packet block using route 1 and the packet block using route 2 are alternated.
  • the transmission interval (feedback period) of leader packets can be shortened compared to the length of the packet train used for speed estimation.
  • the arrival interval of the leader packet is almost equal to the length of the packet train. This is because when a packet block is transmitted using a plurality of routes as described in, the arrival of the leader packet can be received at intervals of ti shorter than the length of the packet train.
  • the node 101 detects the speed change based on the information of the leader packet transmitted from the node 102 at ts (l) or ts (g), and the packet block 300-d transmitted at ts (d). Is adjusted so that the time required for reception from the beginning to the end (reception completion time) at node 102 is less than or equal to t ports.
  • the packet block to be transmitted next to d is also transmitted from route 2 with a size that the reception completion time is t port or less. Thereafter, until route 1 is ready for transmission, that is, until tb + th becomes tf, a packet block having a size that the reception completion time is less than t port degrees is transmitted only from route 2. As described above, the transmission / reception cycle of the leader packet can be kept below about ti even when the delay of the route 1 is increased due to the change of the route state.
  • the node 101 detects the speed change between ts (c) and ts (d), and the data that can be reached before the arrival time e) of the leader packet via the next route 1 Add as many packets over route 1 to packet block 300-d sent to ts (d).
  • the packet block 300-d includes the packets of both paths 1 and 2.
  • the block size is re-determined so that the transmission delay is within the number of available paths of ti for the new speed.
  • the arrival interval of the leader bucket is kept within ti as before the speed change.
  • the bandwidth utilization efficiency is improved.
  • the present invention determines the transmission timing and the transmission path on the transmission side in units of packet blocks rather than being performed for each single packet or packet pair as in the conventional example, the data amount of the packet block Increasing the value reduces the load on the transmission processing of the forwarding node.
  • the state information of the route with a large delay is transmitted using the route with the large delay itself. Compared to feedback, there is an effect that feedback can be made in a short time.
  • the number of packets included in the packet block for each route If this is the case, the amount of signaling information is omitted from the data packet, and the total packet size can be kept lower than the conventional example for the same amount of data.
  • the reception speed is estimated on the assumption that the data packets 301-2 and 301-3 included in the packet block 300-b are received immediately after 301-1. Similarly, it is assumed that the data packet 301-4 included in the packet block 300-c is received immediately after 301-3. Then, a virtual packet block such as the packet block 400 is configured. At this time, the time required to receive data packets 301-2 and 301-3 is the difference between the reception times of packet 302-b and packet 301-3 measured when packet block 300-b is received, and data packet 301-4. The time required to receive the packet is the difference between the reception time of the packet 302-c and the packet 301-4 measured when the packet block 300-c is received.
  • the time required for receiving the data packet of the virtual packet block 400 is the sum of the time required for receiving the data packet measured at the time of receiving 300-a, 300-b, and 300-c.
  • the receiving speed is estimated to be the time required to receive the data packet of the virtual packet block 400 divided by the total amount of data of four data packets from 301-1 to 301-4.
  • the block management information 500 includes the speed of each link predicted by the transmitting side node and the size of the data in the block, thereby enabling early detection of communication abnormality.
  • the outline of the operation to perform is shown.
  • Fig. 11 shows block management information transmitted in the third embodiment when a packet block including packets with sequence numbers 1 to 6 for a certain path is estimated to have a link speed of 350 Kbps, and reception. The relationship of data packet reception timing at the side node is shown. The number line at the bottom of Fig. 11 shows the actual packet arrival sequence at the receiving node.
  • the receiving node does not do anything because it reaches the packet 2 at the speed predicted by the transmitting node, but detects an increase in the arrival interval in packet 3, and the sending side's predicted speed and actual transfer speed. Recognize that a shift has occurred. When the deviation is determined to be greater than or equal to a certain level, an error report is created and sent back to minimize the time during which the sending node has misrecognized the link status and improve the followability of the flow control operation.
  • FIG. 12 shows an example of block management information and a data packet reception sequence at the receiving side node in the fourth exemplary embodiment of the present invention.
  • the block management information 500 includes user flow information for each packet in the block.
  • the user flow refers to a packet transfer session between end hosts that is a target for storing the packet arrival order, and each user flow is assigned a unique ID.
  • each packet in the user flow is assigned a sequence number that is unique in the user flow, separately from the sequence number for each route.
  • the sending node contains two user flow forces 2049 and 2050 in a packet block containing packets with sequence numbers 4 to 11 per route.
  • Figure 12 Number of times at the bottom The straight line shows the actual packet arrival sequence at the receiving node.
  • the loss of packet 5 and packet 6 as a result of transmission. Loss is detected by reception of packet 7. Also, since the flow management information 500 shows that lost packets 5 and 6 are # 1 4 of flow 2049 and # 41 of flow 2050, respectively, packets belonging to these two flows that arrived so far It is transferred without waiting for arrival.
  • Non-Patent Document 8 in the conventional example in which a separate sequence number is assigned to each route and each user flow.
  • user flow information of a lost packet is not provided.
  • the receiving node can know the sequence number of each lost user packet for each user flow, the packet loss can be reliably detected without being confused with the order inversion. Therefore, transfer hold can be omitted when packet loss is detected, and this has the effect of reducing jitter between end-host sessions.
  • the data packet to be compressed includes a common part in the data area.
  • the start sequence number and end sequence number indicate the range of packets subject to data compression.
  • the start bit and the end bit indicate a common range in the data area of the compression target packet by the viewpoint and end point of the bit position.
  • the data between the start bit and the end bit contains common data from the start bit to the end bit. While the above compressed information is included in the block management information, the common data specified there is deleted from the data field of the data packet to reduce the total amount of transmission packet size.
  • Data compression as described above is particularly effective when the data itself includes a header of another protocol and the common part is large. Packet combinations and bits with different common parts If there are multiple items in the range, a plurality of pieces of compressed information as shown in FIG. 13 may be included in the block management information.
  • the transmission data compression according to this embodiment is simpler in control than the conventional data compression method that requires signaling for sharing the compression state between the transmission and reception nodes.
  • the above control information may be routing information! /.
  • the nodes 101, 102, etc. of the present invention not only realize the operation as a node, but also realize the operation as a software by executing a program that executes the function of each part on a computer. You can also This program is held in a magnetic disk, a semiconductor storage device, or other recording medium, and the recording medium force is read into a computer, and the above-described functions can be realized by controlling its operation.

Landscapes

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

Abstract

 本発明の課題は、データパケットに関する制御情報の送信による負荷を軽減し、通信効率を高めることにある。  本発明は、転送ノード101から転送ノード102にパケットを転送する際に、各データパケット301に格納される制御情報をパケットブロック300-1の先頭に配置されるリーダパケット302にまとめて転送ノード101から転送ノード102に送信する。このパケットブロック300-1を受信した転送ノード102は、受信したリーダパケットの制御情報に基づいて、転送ノード101へ転送するパケットの送信を制御する。

Description

明 細 書
通信方法、通信システム、ノードおよびプログラム
技術分野
[0001] 本発明は、パケット通信技術および多重化通信技術に関する。
背景技術
[0002] パケットデータ通信においては、デジタルデータはパケットと呼ばれる小包に収容さ れてネットワーク上を転送される。パケットは転送されるデータ本体と、ネットワーク上 の転送制御に用いられる情報を収容したヘッダを含む。階層化ネットワークでは、上 位階層のヘッダは下位階層ではデータ本体に含まれる。パケットデータ通信を行う網 内の各ノードには、入力される各パケットのヘッダを解読、必要に応じ編集して同じデ ータを次のノードへ送信する、転送プロトコルの機能が実装される。なお一般にパケ ット転送プロトコルは非同期プロトコルであり、同じネットワーク上の異なるパケットの転 送は各ノードが任意の時刻に行う。したがってパケット転送は送信ノードの性能が許 す限り任意の速度で行えることになる。
[0003] し力しながらネットワーク上の各ノードや通信路はそれぞれ個別の性能や負荷の下 で動作しているので、送信ノードから受信ノードに至る経路上のどこかで、転送能力 が送信速度を下回れば、パケットの遅延または廃棄が起こる。このような事態を避け るために、送信ノードと受信ノードの間で通信状態監視のためのシグナリングを行 ヽ 、その結果を送信速度にフィードバックして適正な送信速度を保つ機構はフロー制 御と呼ばれる。
[0004] 代表的なフロー制御プロトコルとしては OSI7層モデルにおける第 4層プロトコルであ る TCPが知られている(詳細は、非特許文献 1参照)。第 3層に IP (インターネット 'プ ロトコル)が用いられている場合に、 TCPパケットを送信ノード力も受信ノードへ送信 する例を図 16に示す。 TCPは、第 3層以下が提供するエンドエンド接続の上で、過 剰な負荷を与えることによるパケットの遅延や欠損、また他のセッションへの過剰な帯 域圧迫を避けるために、スライディングウィンドウ方式のフロー制御を実装している( 詳細は、非特許文献 2参照)。スライディングウィンドウ方式では、ネットワークに一定 量 (例えば、送信したパケットに対応する ACKが到着するまでに送信可能な量)以下 のパケットを保持させることで、過負荷による転送障害を回避しつつ、下位階層の接 続が提供する帯域の有効活用を実現する。
[0005] ネットワークに保持されるデータ量の上限値はウィンドウサイズと呼ばれる。スライデ イングウィンドウ方式では、帯域を有効活用するには、帯域と往復遅延の積に比例し たウィンドウサイズを設定する必要がある。例えば、下位層の転送ノードにおける処理 遅延が無視でき、かつ経路上の物理リンク力 伝播遅延が無視できる程度に短距離 の有線回線のみ力 なるような場合、パケットの転送遅延は帯域に反比例するので、 帯域によらずウィンドウサイズは同一でよい。
[0006] し力しながら下位層の転送ノードにおける処理遅延や、伝播遅延が無視できないケ ースでは、下位層の接続の帯域が広いほど、ネットワークの帯域を有効活用するため に、ウィンドウサイズを大きく設定する必要がある。一方、ウィンドウサイズが大きくなる と、結果的にネットワークへの負荷は大きくなりパケット遅延や損失が生じる可能性が 高まるために、 TCPでは一定以上の遅延 ·帯域積を有する経路ではフロー制御が転 送帯域を制限してしまい、経路本来の帯域を有効活用できない (詳細は、非特許文 献 3参照)。このような場合にもネットワークへの負荷を一定以下に抑えつつ帯域を有 効活用する手法として、同一系路上に複数の TCPセッションを張り、各セッションの 遅延 ·帯域積を一定以下に保つことで高い帯域利用効率を確保する並列 TCPの手 法が提案されて!ヽる (詳細は、非特許文献 4参照)。
[0007] また、 2ノード間に複数の経路が存在する場合に、該 2ノード間に経路ごとにバケツ ト転送セッションを張り、各セッションに負荷分散して並列転送することにより 2ノード 間の通信を広帯域ィ匕する、逆多重化の手法が知られている。例えば各経路上に TC Pセッションを張って並列転送し、単一の経路を用いる場合に比べ広帯域な 2ノード 間転送を行う手法も提案されて!ヽる (詳細は、非特許文献 5参照)。
[0008] 次に、遅延や帯域が急激に変動する無線リンクを含む経路上に TCPを適用する場 合について考える。この場合、帯域の有効活用のためには遅延と帯域との積 (以下、 遅延 ·帯域積と 、う)が最も大き 、状態 (時点)に合わせてウィンドウサイズを設定する 必要がある。そうすると帯域力 、さくなつたときには遅延が帯域に反比例して大きくな るため、そのような複数の経路を用いて並列転送した場合、経路間のジッタが大きく なる問題がある。このような問題を回避しつつ無線リンクを含む経路を多重化する手 段として、各経路の速度および遅延を監視しながら、各パケットが最短の遅延の経路 を経由するように経路間の負荷分散を行う Mobile Inverse Muxが提案されてい る(詳細は、非特許文献 6、 8、 10、 11参照)。以下では Mobile Inverse Muxを M IMと略する。
[0009] MIMは、各経路の速度と遅延を監視するが、遅延の大き!/、無線リンクを含む経路 では監視結果のフィードバックに遅れが生じるため、保持してある過去の送信履歴を 参照して、フィードバック結果が有効となる時刻以降の履歴から、現在パケットを送信 した場合の遅延を予測する。各経路に対する遅延予測値に基づきフロー制御を行う ことで、帯域を有効活用しつつ経路を多重化する際のジッタを抑制する。
[0010] MIMなどの逆多重化プロトコルの多くでは、異なる経路を経由して転送されたパケ ットの順序が下流ノードへの転送の際に逆転しないよう、パケット順序制御機能を実 装している。この機能は例えば、順序を保存したいフローごとに、送信側ノードは各 パケットにシーケンス番号を付与し、受信側ノードは受信したシーケンス番号にした 力 Sつてパケットの順序を正しく並べてから下流に転送することで実現される。
[0011] 非特許文献 1: RFC793
非特許文献 2 :マスタリング TCP/IP、 Phillip Miller著、オーム社開発局(1998) 非特干文献 3 : M. Nakamura et al., End-Node tranmissionrate control kind to inter mediate routers, PFLDnet 2004.
非特許文献 4 :角澤ら、「長距離 ·高バンド幅通信における並列 TCPストリーム間の調 停の実現」、 SACSIS 2004.
非特許文献 5 :牧、長谷川、村田、村瀬、「TCPオーバレイネットワークの性能解析お よび評価」、信学技報 IN04-96 (2004).
特干文献 6 : T.Nakata et al., 'Efficient bundling of heterogeneousradio resources fo r broadband Internet access from moving vehicles," inproceedings of Global Mobile Congress 2004, Oct. 11-13 2004, Shanghi, China.
非特許文献 7 : Dovrolis, Ramanathan, and Moore, "What Do PacketDispersion Tech niques Measuere?," IEEE INFOCOM 2001)
非特許文献 8:小野ら、「移動体インターネット(3) —再送制御方式一」、 2004年電 子情報通信学会総合大会、論文 B-5-165 (2004).
非特干文献 9 : L.S.Brakmo and L.L.Peterson, TCP Vegas: Εηα to Endし ongestion Avoidance on a Global Internet, IEEE Journal of Selected Areas inCommunications , Vol.13, No.8, pl465 (1995).
非特許文献 10 :岡ノ上ら、「移動体インターネット(1) 基本コンセプトとシステム構 成一」、 2004年電子情報通信学会総合大会、論文 B-5-163 (2004).
非特許文献 11:中田ら、「移動体インターネット(2) フロー制御方式一」、 2004年 電子情報通信学会総合大会、論文 B-5-164 (2004).
発明の開示
発明が解決しょうとする課題
[0012] 以上述べたように、従来パケット転送セッションのフロー制御方式として広く用いら れて 、る TCPでは、ある程度以上の遅延 ·帯域積を有する経路で帯域を有効活用す るには、複数セッションを張るなどして各セッションが保つべき遅延'帯域積を小さく 保つ機構が必要になる。し力しこれでは、結果として各セッション間への負荷分散な ど複雑な制御が必要になるという問題がある。また帯域が変動する経路上で用いる 場合、帯域に反比例して遅延が増加する問題がある。
[0013] 一方、遅延を抑制しつつ帯域を有効活用するための複雑なフロー制御を行う MIM においては、パケットごとに情報量の多いヘッダ作成、送信履歴情報の保存などの 処理負荷が転送速度を制限してしまう問題がある。
[0014] また TCPや MIMなどのフロー制御プロトコルでは、転送の完全性を保障するため に、特に障害がな 、場合でも一定以上の周期で Ackなどの確認メッセージを受信側 ノードが返信する必要がある。特にセルラ回線のように上りと下りの速度が著しく異な る非対称ネットワークの場合、下り帯域が上り帯域と比較し広いので、上り帯域にあわ せてウィンドウサイズを設定すると、帯域利用効率の低下を招き、また、上り帯域の利 用率がもともと大きい時に Ack信号を大量に送信してしまうと往復遅延の増加を招い てしまうという問題がある。 [0015] また MIMのように、推定速度などあらわな経路状態をフィードバックしてフロー制御 を行うプロトコルにおいては、当該経路への負荷を増やすほど、経路の帯域が大きい 方向に変化するときに帯域の利用効率を高く保てる。一方経路の帯域が小さい方向 に変化するときには、当該経路への負荷が高いほど転送遅延が増大し、フィードバッ クにかかる時間が増えるので、誤った状態認識に基づいた負荷分散を行う時間が拡 大される。複数の経路のうちの一部で誤った状態認識が生じると、複数の経路間ジッ タが増大し、複数の経路をまとめた全体としての通信において、パケット廃棄率また は再送率も上昇する。したがって経路の帯域の変化が上昇傾向のときにこれに追随 してウィンドウサイズを大きくしてパケットの送出レートを上昇させると、下降傾向のとき に悪影響を与えるトレードオフの問題がある。
[0016] さらにこれらのフロー制御プロトコルではパケット全体のデータサイズに対するへッ ダの占有率が高ぐデータ転送に使える帯域が圧迫される問題がある。この対策とし て、ヘッダ圧縮の手法を適用することもできる。しかし、データ転送の信頼性を確保し つつヘッダ圧縮を行うには送信側と受信側で圧縮および伸張に必要な状態変数を 共有している必要があり、その更新や同期の確認などのためにプロトコルが複雑にな る。また遅延やロスが大きいリンクでは状態変数の同期が追いつかず圧縮効果が出 にくいという問題がある。
[0017] また、順序制御機能を実装した逆多重化プロトコルにおいて、単一のユーザフロー が各経路に負荷分散されて転送さる場合、ユーザフロー内で転送順序を正しく保つ ために、受信ノードにおいて経路間の速度差により、受信済みの最大シーケンス番 号よりも 2以上大きいシーケンス番号のパケットが到着した場合に、受信済み最大シ 一ケンス番号より 1だけ大き!/、シーケンス番号のパケット到着まで転送を保留しなけ ればならない。
[0018] しかしパケット損失がある場合には、損失したパケットを待つことは転送順序を救済 できな!/、のみならず余剰な遅延をもたらすので好ましくな 、。逆多重化される各経路 においては、あるユーザフローのパケットに続くパケットは一般に異なるユーザフロー のものなので、損失したパケットがどのユーザフローのものか推定できない。したがつ て本来不要な、損失したパケットの待機が防げず、転送のリアルタイム性が損なわれ ると言う問題がある。
[0019] また、従来のパケット通信にぉ 、ては、送信側ノードはヘッダに含める制御情報の 決定を各送信パケットにっき行 、、受信ノードはヘッダ読み取りおよび解析を各パケ ット受信につき行う。このときノードの処理負荷は送受信データ速度の上昇と共に高 まり、ノードの処理能力が特定のプロトコルでのノードの最大転送速度を決める。 Ml Mや TCPのように処理が複雑なプロトコルでは、ノードの最大転送速度が経路の帯 域よりも低くなりやすぐ本来は経路の帯域の有効活用のために導入するフロー制御 の処理速度がボトルネックとなり、結果的に経路の帯域の活用効率が低下してしまう 問題がある。
[0020] そこで、本発明は上記課題に鑑みて発明されたものであって、その目的は、データ パケットに関する制御情報の送信による負荷を軽減し、通信効率を高める通信技術 を提供することにある。
[0021] また、本発明の目的は、複数の経路で結ばれたノード間でパケット通信を行う際に 、制御情報を格納したリーダパケットを低遅延な経路や信頼性の高 、経路を用いて 転送することで、シグナリング情報の損失や遅延を抑制することのできる技術を提供 することにある。
課題を解決するための手段
[0022] 上記課題を解決するための第 1の発明は、
複数のデータパケットとリーダパケットとを 1つのブロックとし、
前記複数のデータパケットに関する制御情報を、前記リーダパケットにまとめて送信 し、
受信したリーダパケットの制御情報に基づ 、て、パケットの送信を制御することを特徴 とする。
[0023] 上記課題を解決するための第 2の発明は、上記第 1の発明において、
前記制御情報は、フロー制御情報であることを特徴とする。
[0024] 上記課題を解決するための第 3の発明は、上記第 1の発明において、
前記制御情報は、再送制御情報であることを特徴とする。
[0025] 上記課題を解決するための第 4の発明は、上記第 1の発明において、 前記制御情報は、ルーティング情報であることを特徴とする。
[0026] 上記課題を解決するための第 5の発明は、上記第 1の発明において、
前記制御情報は、経路情報であることを特徴とする。
[0027] 上記課題を解決するための第 6の発明は、上記第 1から第 5のいずれかの発明に おいて、
前記制御情報は、前記データパケットに共通する制御情報であることを特徴とする
[0028] 上記課題を解決するための第 7の発明は、上記第 1から第 6のいずれかの発明に おいて、
リーダパケットを一意に識別する識別情報を前記データパケットに含めることを特徴 とする。
[0029] 上記課題を解決するための第 8の発明は、上記第 1から第 7のいずれかの発明に おいて、
制御情報をまとめたデータパケットを一意に識別する識別情報を前記リーダバケツ トに含めることを特徴とする。
[0030] 上記課題を解決するための第 9の発明は、上記第 1から第 8のいずれかの発明に おいて、
前記複数のデータパケットまたはリーダパケットが、複数の回線を経由して送受信さ れることを特徴とする。
[0031] 上記課題を解決するための第 10の発明は、上記第 9の発明において、
前記リーダパケットは、前記複数回線中最速の回線を用いて送信することを特徴と する。
[0032] 上記課題を解決するための第 11の発明は、上記第 9の発明において、
前記制御情報に基づ 、て、前記リーダパケットまたは前記データパケットを送信す る回線を選択することを特徴する。
[0033] 上記課題を解決するための第 12の発明は、上記第 1から第 11のいずれかの発明 において、
受信したリーダパケットに含まれる制御情報に基づき送信するブロックのデータ量を 決定することを特徴とする。
[0034] 上記課題を解決するための第 13の発明は、上記第 1から第 12のいずれかの発明 において、
受信したリーダパケットに含まれる制御情報に基づき送信するブロックの送信時刻 を決定することを特徴とする。
[0035] 上記課題を解決するための第 14の発明は、上記第 1から第 13のいずれかの発明 において、
同一のブロックに属する複数のデータパケットの受信時刻から通信経路の速度を推 定することを特徴とする。
[0036] 上記課題を解決するための第 15の発明は、
複数のデータパケットとリーダパケットとを 1つのブロックとして扱い、前記複数のデ ータパケットに関する制御情報を前記リーダパケットにまとめるパケットブロック作成手 段と、
受信したリーダパケットにまとめられた制御情報に基づ 、て、パケットの送信を制御 するスケジューリング手段と、
を有することを特徴とする。
[0037] 上記課題を解決するための第 16の発明は、上記第 15の発明において、
前記制御情報は、フロー制御情報であることを特徴とする。
[0038] 上記課題を解決するための第 17の発明は、上記第 15の発明において、
前記制御情報は、再送制御情報であることを特徴とする。
[0039] 上記課題を解決するための第 18の発明は、上記第 15の発明において、
前記制御情報は、ルーティング情報であることを特徴とする。
[0040] 上記課題を解決するための第 19の発明は、上記第 15の発明において、
前記制御情報は、経路情報であることを特徴とする。
[0041] 上記課題を解決するための第 20の発明は、上記第 15から第 19のいずれかの発明 において、
前記パケットブロック作成手段は、前記データパケットに共通する制御情報を前記リ ーダパケットにまとめることを特徴とする。 [0042] 上記課題を解決するための第 21の発明は、上記第 15から第 20のいずれかの発明 において、
リーダパケットを一意に識別する識別情報を前記データパケットに含めることを特徴 とする。
[0043] 上記課題を解決するための第 22の発明は、上記第 15から第 21のいずれかの発明 において、
制御情報をまとめたデータパケットを一意に識別する識別情報を前記リーダバケツ トに含めることを特徴とする。
[0044] 上記課題を解決するための第 23の発明は、上記第 15から第 22のいずれかの発明 において、
前記複数のデータパケットまたはリーダパケットを複数の回線を経由して送信する 送信手段を有することを特徴とする。
[0045] 上記課題を解決するための第 24の発明は、上記第 23の発明において、
前記スケジューリング手段は、リーダパケットを前記複数回線中最速の回線を用い て送信するように制御することを特徴とする。
[0046] 上記課題を解決するための第 25の発明は、上記第 23の発明において、
前記スケジューリング手段は、制御情報に基づいて、前記リーダパケットまたは前記 データパケットを送信する回線を選択することを特徴する。
[0047] 上記課題を解決するための第 26の発明は、上記第 15から第 25のいずれかの発明 において、
前記スケジューリング手段は、受信したリーダパケットに含まれる制御情報に基づき 送信するブロックのデータ量を決定することを特徴とする。
[0048] 上記課題を解決するための第 27の発明は、上記第 15から第 26のいずれかの発明 において、
前記スケジューリング手段は、受信したリーダパケットに含まれる制御情報に基づき 送信するブロックの送信時刻を決定することを特徴とする。
[0049] 上記課題を解決するための第 28の発明は、上記第 15から第 27のいずれかの発明 において、 同一のブロックに属する複数のデータパケットの受信時刻から通信経路の速度を推 定するパケット解析部を有することを特徴とする。
[0050] 上記課題を解決するための第 29の発明は、
複数のデータパケットとリーダパケットとを 1つのブロックとして扱い、前記複数のデ ータパケットに関する制御情報を前記リーダパケットにまとめるパケットブロック作成手 段と、
他ノードから受信したリーダパケットにまとめられた制御情報に基づいて、パケットの 送信を制御するスケジューリング手段と、
を有することを特徴とする。
[0051] 上記課題を解決するための第 30の発明は、上記第 29の発明において、
前記パケットブロック作成手段は、前記データパケットに共通する制御情報を前記リ ーダパケットにまとめることを特徴とする。
[0052] 上記課題を解決するための第 31の発明は、上記第 29又は第 30の発明において、 リーダパケットを一意に識別する識別情報を前記データパケットに含めることを特徴 とする。
[0053] 上記課題を解決するための第 32の発明は、上記第 29から第 31のいずれかの発明 において、
制御情報をまとめたデータパケットを一意に識別する識別情報を前記リーダバケツ トに含めることを特徴とする。
[0054] 上記課題を解決するための第 33の発明は、上記第 29から第 32のいずれかの発明 において、
前記複数のデータパケットまたはリーダパケットを複数の回線を経由して送信する 送信手段を有することを特徴とする。
[0055] 上記課題を解決するための第 34の発明は、上記第 33の発明において、
前記スケジューリング手段は、リーダパケットを前記複数回線中最速の回線を用い て送信するように制御することを特徴とする。
[0056] 上記課題を解決するための第 35の発明は、上記第 33又は第 34の発明において、 前記スケジューリング手段は、他ノードから受信したリーダパケットにまとめられた制 御情報に基づ 、て、前記リーダパケットまたは前記データパケットを送信する回線を 選択することを特徴する。
[0057] 上記課題を解決するための第 36の発明は、上記第 29から第 35のいずれかの発明 において、
前記スケジューリング手段は、他ノードから受信したリーダパケットに含まれる制御 情報に基づき送信するブロックのデータ量を決定することを特徴とする。
[0058] 上記課題を解決するための第 37の発明は、上記第 29から第 36のいずれかの発明 において、
前記スケジューリング手段は、他ノードから受信したリーダパケットに含まれる制御 情報に基づき送信するブロックの送信時刻を決定することを特徴とする。
[0059] 上記課題を解決するための第 38の発明は、上記第 29から第 37のいずれかの発明 において、
同一のブロックに属する複数のデータパケットの受信時刻から通信経路の速度を推 定するパケット解析部を有することを特徴とする。
[0060] 上記課題を解決するための第 39の発明は、
複数のデータパケットとリーダパケットとを 1つのブロックとして扱い、前記複数のデ ータパケットに関する制御情報を前記リーダパケットにまとめるパケットブロック作成処 理と、
他ノードから受信したリーダパケットにまとめられた制御情報に基づいて、パケットの 送信を制御するスケジューリング処理と、
をコンピュータに実施させることを特徴とする。
[0061] 本発明は上述のとおり、複数のデータパケットとリーダパケットとを 1つのブロックとし 、前記複数のデータパケットの制御情報を、前記リーダパケットにまとめ、前記リーダ パケットの制御情報に基づいて、パケットの送信を制御する。このため、ノードにおい て、制御情報を早期に知ることができるので、シグナリングを高速に実施することが可 能となる。
発明の効果
[0062] 本発明は、 1つ以上の経路を選択可能な 2ノード間において、パケットブロックごと の受信シーケンスに基づく経路状態推定の結果をフィードバックすることで、従来例 に比べ正確な経路状態推定に基づくフロー制御および負荷分散を実現できる。
[0063] また、本発明は、フロー制御および経路選択処理を複数のパケットに対し 1回だけ 行うので、送信パケットごとにフロー制御および経路選択処理を行う従来例に比べ処 理負荷が軽減される。
[0064] また、本発明は、各経路のフロー制御情報、負荷分散情報、 ARQ情報、順序制御 情報をリーダパケットに集約し、最も低遅延な経路や信頼性の高い経路からブロック の先頭として送信することでシグナリング情報の損失や遅延を抑制し、経路の帯域が 上昇傾向のときの帯域利用効率と、下降傾向のときの制御の追従性の間のトレード オフを緩和できる。
[0065] また、本発明は、受信ノードはリーダの情報により当該ブロック内のパケット受信シ 一ケンスを予測できるので、予測と違う場合には通信異常と判断することで、通信異 常の早期検出が可能となる。
[0066] また、本発明は、順序制御バッファ内データの転送を必要以上の長時間保留する ことがなくなり、エンドエンドジッタが改善される。
[0067] また、本発明は、送信側と受信側での状態情報共有が必要なヘッダ圧縮の従来例 に比べ簡略な実装でヘッダ情報削減を実現する。
図面の簡単な説明
[0068] [図 1]図 1は、本発明の第 1の実施例を示すシステム構成図である。
[図 2]図 2は、本発明のリーダパケットの構成図である。
[図 3]図 3は、本発明のデータパケットの構成図である。
[図 4]図 4は、フロー制御アルゴリズム(PACスケジューラ)を本発明の第 1の実施例に 応用した例である。
[図 5]図 5は、スケジューリング部が従うフローチャートである。
[図 6]図 6は、パケット作成部が従うフローチャートである。
[図 7]図 7は、本発明の第 2の実施例を示すシステム構成図である。
[図 8]図 8は、フロー制御アルゴリズム(PACスケジューラ)を本発明の第 2の実施例に 応用した例である。 [図 9]図 9は、本発明の第 2の実施例のフィードバック周期を短くできる例である。
[図 10]図 10は、本発明の第 2の実施例の速度推定精度を一定に保つ例である。
[図 11]図 11は、本発明の第 3の実施例を説明する図である。
[図 12]図 12は、本発明の第 4の実施例を説明する図である。
[図 13]図 13は、本発明の第 5の実施例を説明する図である。
[図 14]図 14は、本発明の概要を説明する図である。
[図 15]図 15は、本発明の概要 (データパケットが 3個以上の場合)を説明する図であ る。
[図 16]図 16は、従来の発明の概要を説明する図である。
符号の説明
003 リーダパケット
004、 005、 006 データパケット
101、 102 ¾5送ノード、
201 ノッファ §
202 スケジューリング部
203 パケットブロック作成部
204 パケット送信部
205
206 パケット受信部
207 パケット解析部
208 パケット転送部
301 データパケット
302 リーダパケット
発明を実施するための最良の形態
(発明の概要)
図 14を用いて、第 1の実施の形態について説明する。図 14は、送信ノード 001から 受信ノード 002に対して、本発明のパケット転送を行う様子を示している。従来技術 の第 4層プロトコルである TCPを用いたパケット転送では、図 16に示したように、各パ ケットは、先頭から IPヘッダ、 TCPヘッダ、ペイロードの順で構成されている。 TCPに おいては、複数のパケットを同時または制御情報が変化しない程度の短時間のうち に送信する場合、各パケットに付与される TCPヘッダの制御情報は全て等しくなる。
[0071] 一方、本発明では、複数のパケットを同時または制御情報が変化しない程度の短 時間のうちに送信する場合、制御情報は先頭のリーダパケット 003用のヘッダのみに 格納し、当該本発明のリーダパケット用ヘッダに従来と同様にあて先ノードを示す IP ヘッダを付カ卩して、 IPヘッダと本発明のリーダパケット用ヘッダとからなるリーダバケツ トをまず送信する。
[0072] そして、当該リーダパケット 003に後続して、リーダパケット用ヘッダより情報量の少 ない本発明のデータパケット用ヘッダを含むデータパケット 004, 005を送信する。
[0073] このように、本発明では、各パケットのヘッダに格納されて 、た制御情報を先頭のリ ーダパケット 003のヘッダに格納しており、パケット 003の受信に必要な時間は、従来 のパケット 0040の受信に必要な時間より短い。よって、受信ノードでは、当該制御情 報 (例えば、 ACK情報等)について従来のパケット転送方法より早期に知ることがで きる。この結果、当該制御情報に基づくシグナリングを高速に実施することが可能とな る。
[0074] また、上述の効果は、送信するデータパケットが図 15に記載したように、 3つ以上に なった場合でも同様である。図 15では、従来の方式において同時または制御情報が 変化しない程度の短時間のうちに送信する場合、データパケット 004a, 005a, 006a それぞれに、重複のある、同じデータ量の第 4層ヘッダを付与するのに対し、本発明 では従来例における各パケットヘッダの重複部分に当たる制御情報を先頭のリーダ パケット 003aのヘッダにまとめて格納し、各データパケットには、 TCPヘッダより軽い 本発明のデータパケット用ヘッダを第 4層ヘッダとして付与している。
[0075] この図 15に示したように、従来多数のパケットで重複して持たれていた情報をリー ダパケットに代表して持たせることで、ヘッダによるシグナリングの情報量は TCPと同 等に保ちつつ、全パケットのヘッダサイズの合計は、 TCPに比較して減らすことが可 能となる。この結果、パケット送信全体の伝送効率を向上させることが可能となる。
[0076] また、図 15に示したように多数のパケットについて 1つのリーダパケットを作成して パケット送信することによる更なる効果は、経路の速度測定の精度が上昇する点にあ る。速度は、最低 2パケットあれば測定可能である力 パケットが多ければ多いほど、 その制度は上昇する。
[0077] その一つの理由は、あるひとつのフローに含まれる多くのパケットを送信した場合、 各パケット間にほかのフローに属するパケットが挟み込まれる可能性が高まる。実際 の伝送路では、そのようなことは通常起こりえることであるので、パケット数が多ければ 多いほど、実際の伝送路に近い状態での速度測定が可能となるからである。
[0078] また、もう一つの理由は、パケットブロックに含まれるパケット数が増えると、 1つの測 定に係わるパケットの先頭と末尾の受信時刻の差が大きくなるため、受信ノードに要 求される時間分解能も大きくてよいこととなり、同じ時間分解能のノードであれば、本 発明のパケットブロックを使用した方が速度制度が向上することとなるからである。
[0079] 以上、本発明の概要について説明した。以下に、更に詳細に説明する。
[0080] (第 1の実施例)
図 1に、本発明の第 1の実施例を示す。図において、転送ノード 101と転送ノード 1 02の間では、本発明のパケット転送方法を用いてパケットの転送を行う。本実施例は 双方向対称のプロトコルを想定するため、転送ノード 101と転送ノード 102の構成は 同一である。以下、転送ノード 101から転送ノード 102へのパケット転送を例に取り説 明する力 転送ノード 102から転送ノード 101への転送も同様の動作で行われる。
[0081] まず転送ノード 101のパケット送信動作について説明する。転送ノード 101は、転 送ノード 102に転送すべきデータを、他のノードもしくは同じノード上のユーザアプリ ケーシヨン等のデータ発生手段力も受け取り、バッファ部 201に収容する。
[0082] スケジューリング部 202は、記憶部 205に格納されたスケジューリング情報に基づき 送信を制御する。例えば、パケット送信を行うべき時刻とリーダパケットに続いて送信 するデータパケット(以下、パケット郡と称する)の構成を後述するように決定し、パケ ット送信を行うべき時刻が来ると、パケットブロック作成部 203にリーダパケットおよび パケット郡の構成を通知する。リーダパケットおよびパケット郡の構成を通知されたパ ケットブロック作成部 203は、データパケットの制御情報をリーダパケットにまとめる。 例えば、通知された構成および記憶部 205に格納されたフロー制御情報に基づきリ ーダパケットを作成し、またバッファ部 201から、通知された構成に基づく数のデータ を取り出し、取り出したデータの各々に所定のヘッダ情報を付加してパケット群を作 成し、パケット群とリーダパケットとを同時または所定の間隔をおいてパケット送信部 2 04に渡す。このとき送信されるパケットの集合を以下ではパケットブロックと称する。
[0083] パケット送信部 204はパケットブロック作成部 203から渡されたパケットを順次、転 送ノード 102内のパケット受信部 206に対して転送する。 300-1は、パケット送信部 2 04から送信された、通信経路上のパケットブロックの模式図であり、リーダパケット 30 2に複数のデータパケット 301が続くことを示している。
[0084] 次に、転送ノード 101からのパケットブロック 300- 1受信時の転送ノード 102の動作 について説明する。パケット解析部 207は、パケットブロック 300-1から後述するよう に所定の情報を抽出するとともに、受信パケットに関する後述するような所定の計測 を行い、その結果をフロー制御情報として記憶部 205に格納する。解析部 207での 処理を終えたパケットのデータは順次パケット転送部 208に渡され、パケット転送部 2 08はパケット解析部 207から受け取ったデータを次の転送ノード、または同一ノード 内のユーザアプリケーション等のデータ受信手段に転送する。
[0085] 転送ノード 102内のスケジューリング部 202は、転送ノード 101内のスケジユーリン グ部 202と同様の動作により、記憶部 205に格納されたスケジューリング情報に基づ き、パケット送信を行うべき時刻とパケット郡の構成を後述するように決定し、パケット 送信を行うべき時刻が来ると、パケットブロック作成部 203にリーダパケットおよびパケ ット郡の構成を通知する。
転送ノード 102内のパケットブロック作成部 203は、通知された構成および記憶部 2 05に格納されたフロー制御情報に基づきリーダパケットを作成し、ノ ッファ部 201に 格納されたデータとともにパケットブロック 300- 2を構成し、パケット送信部 204を介し て転送ノード 101内のパケット受信部 206に対し送信する。送信後、送信履歴を記憶 部 205に格納する。
[0086] 転送ノード 102から新しいパケットブロック 300- 2を受信すると、転送ノード 101内 のパケット解析部 207はパケットブロック 300-2から所定の情報を抽出するとともに、 受信パケットに関する所定の計測を行い、その結果をフロー制御情報として記憶部 2 05に格納し、フロー制御情報が更新されたことをスケジューリング部 202に通知する 。スケジューリング部 202は、更新されたフロー制御情報に基づき、同様に記憶部 20 5に格納されたスケジューリング情報を更新する。以降のパケット送信タイミングおよ びパケットブロック構成の決定は、更新したスケジューリング情報に基づき行われる。
[0087] 図 2に、本発明で用いるリーダパケットの構造の例を示す。本発明はいかなる通信 レイヤ上のプロトコルとしても実施可能である力 本実施例では第 4層のプロトコルと して実装するものとし、下位層の転送プロトコルが IPである場合の構造例を示して ヽ る
[0088] 図 2に示されるように、本実施例におけるリーダパケットには、先頭の IPヘッダに続く ブロック管理情報、フロー制御情報力 Sリーダパケット用ヘッダに含まれる。一方データ パケットの構造は図 3に示され、 IPヘッダ以外にデータパケット用ヘッダにブロック被 管理情報を、ペイロードにデータ本体を含む。
[0089] ブロック管理情報は、送信側ノードが生成する、パケットブロック内パケットのバケツ ト数ゃパケットの優先度等の属性情報である。一方ブロック被管理情報は、リーダパ ケットを一意に識別する識別情報である。即ち、各データパケットが属するパケットブ ロックを識別するための情報である。本実施例では、送信ノードは各パケットブロック にユニークなシーケンス番号を付与するものとし、これをブロック被管理情報とする。 またブロック内の各パケットは、リーダパケットを先頭として順次送信される (パケットブ ロック作成部 203からパケット送信部 204に渡される)ものとし、その送信時のタイムス タンプと、パケットブロックに属するパケットのシーケンス番号の範囲をブロック管理情 報とする。これらの情報をもとに、受信ノードでは遅延の測定及び非特許文献に記載 されて 、るパケットトレイン方式 (総データ量 Z最後のパケットと最初のパケットとの受 信時刻の差 から帯域推定を行う方式)による通信経路の帯域推定を行う。
[0090] また、制御情報をまとめたデータパケットを一意に識別する識別情報をリーダバケツ トに含めることで、リーダパケットとデータパケット郡との関係を担保しても良い。
[0091] 以上の前提に基づき、再び図 1を参照して、本実施例のフロー制御の機構を具体 的に説明する。転送ノード 102内のパケット解析部 207は、パケット受信部 206よりパ ケットブロック 300— 1のリーダパケット 302を受信すると、ブロック管理情報よりバケツ トブロック 300— 1のタイムスタンプとシーケンス番号の範囲を抽出する。また受信時 刻と抽出したタイムスタンプの差を、経路遅延の推定結果として記憶部 205に書き込 む。後続のデータパケット 301の受信時に、シーケンス番号がパケットブロック 300— 1のシーケンス番号範囲内であったらそのデータサイズを記憶しておく。また受信した パケットがブロック内で最後に受信されるパケットであったら、受信されたパケットプロ ック内データパケットのパケットサイズの総計を、当該パケットの受信時刻とリーダパケ ットの受信時刻の差で割ったものを、通信経路の帯域の推定結果として記憶部 205 に書き込む。
[0092] 以上の動作により転送ノード 102内のパケット解析部 207が記憶部 205に記録した フロー制御情報 (経路遅延の推定結果と経路帯域の推定結果)は、転送ノード 102 力も転送ノード 101に送信するパケットブロック 300-2のリーダパケットに収容され、 転送ノード 101内のパケット解析部 207を介して記憶部 205に届けられる。転送ノー ド 101内の記憶部 205は新たなフロー制御情報が届けられると、フロー制御情報更 新をスケジューリング部 202に通知し、該通知を受けたスケジューリング部 202は、更 新されたフロー制御情報、すなわち経路遅延の推定結果と経路帯域の推定結果とを 用いて、スケジューリング情報を更新し、以降は更新したスケジューリング情報に基づ きパケットブロックが構成される。
[0093] 以上、第 1の実施例におけるパケットブロック転送方式を実装したノードの構成と動 作の例について説明した。以下では、図 1においてパケットブロックの送信タイミング を決定するスケジューリング部 202と、パケットブロックの構成を決定するパケットブロ ック作成部 203が従うフロー制御アルゴリズムの例について説明する。
[0094] フロー制御アルゴリズムの第 1の例として、 TCPで用いられているウィンドウ制御を 応用し、ウィンドウサイズをパケットトレイン方式により推定した経路帯域に基づき決定 するフロー制御アルゴリズムにっき説明する。この実施例では、転送ノード 102から 転送ノード 101に送信するリーダパケット 302には TCPで用いられるのと同様な Ack 情報、受信ウィンドウサイズ (受信ノード側で決定した受診可能なデータ量)を含める 。このリーダパケット 302を受信した転送ノード 101は以下の手順で転送ノード 102へ の送信処理を行う。リーダパケット 302を受信したら、パケット解析部 207は該リーダ パケット 302に含まれる Ack内容を記憶部 205に記録し、記憶部 205は新規 Ack受 信イベントをスケジューリング部 202に通知する。
[0095] スケジューリング部 202は受信したリーダパケットから抽出した受信ウィンドウサイズ と、記憶部に記録されている送信履歴より抽出した、 Ackされたパケットの後に送信し たパケットのデータ量の差を送信可能データ量としてパケットブロック生成部 203に 通知する。
[0096] パケットブロック生成部 203はリーダパケット 302を含むパケットブロックサイズが送 信可能データ量を超えな 、ような最大量のデータをバッファ部から取り出し、各デー タにブロック被管理情報を付加したデータパケットを作成する。また、 Ack情報および ブロック管理情報を含むリーダパケットを作成し、両者力もなるパケットブロックをパケ ット送信部 204に渡す。もし送信可能データ量が、予め定めた下限に満たない場合 は、次のスケジューリング部 202からの送信可能データ量通知までパケットブロック作 成を保留する。
[0097] パケットブロックを送信できた場合、送信履歴を記憶部 205に記録する。ここで転送 ノード 101が用いた受信ウィンドウサイズは、転送ノード 102のパケット解析部 207が 、転送ノード 101からのパケットブロックを受信した時に推定した経路速度より決めて いる。受信ウィンドウサイズの値は、例えば、予め定めた最大往復遅延と推定速度の 積で与えられる。
[0098] さらに、受信バッファ残量などに基づく上限を別途設け、この上限未満であれば、 受信ウィンドウサイズの決定に推定速度に基づく値を用いるようにしてもょ 、。
[0099] 以上説明した、速度推定結果を援用したウィンドウ制御を用い、従来複数のバケツ トで重複して持たれて 、た情報をリーダパケットに代表して持たせることで、ノード処 理負荷軽減やヘッダサイズ低減の効果が得られる。また、これに加え、下記の効果が 生じる。まず、往路と復路の経路速度差によらず往復遅延時間が、予め定めた最大 往復遅延時間以下になるよう制御するため、速度変動のある経路では従来のウィンド ゥ制御に比べ遅延の分散を低減する効果がある。またウィンドウサイズが速度推定結 果を用いて直接求められるため、損失や遅延変動が大きい経路上でも帯域を有効 活用できる特徴がある。この点は、非特許文献 1、 9と比較し有利な点である。すなわ ち、非特許文献 1、 9では、送信側の輻輳ウィンドウサイズと受信ウィンドウサイズの小 さいほうをウィンドウサイズとして採用していることから、パケットロスが発生した場合に ウィンドウサイズを小さくする制御をしてしまう。これに対し、本発明では、パケットロス が発生した場合であっても、速度推定結果を用いてウィンドウサイズを決定して 、る ためウィンドウサイズ自体には影響がな!、ので、対域の有効活用が可能となる。
[0100] なおリーダパケットには受信ウィンドウサイズではなく速度推定結果を含め、ウィンド ゥサイズの計算は送信側のノードのパケット解析部 207が行ってもよい。さらに、リー ダパケット受信時に計算した送信可能なデータ量を同時に全て送るのではなぐ複 数のパケットブロックに分割し、推定速度力も決まる送信間隔をお 、て送信してもよ!/ヽ 。ただし、このときの送信間隔は、先に送信したパケットブロックと後力も送信したパケ ットブロックが経路上で接触するような間隔である必要がある。また、このようにバケツ トブロックを分割して送信することにより、経路に送出されるバーストのサイズが小さく なるため、パケットロス確率低下の効果が期待できる。
[0101] フロー制御アルゴリズムの第 2の例として、非特許文献 6で公開されている PACスケ ジユーラの方法を応用した方法にっ 、て説明する。送信ノードにおける PACスケジュ ーラの基本動作は、受信ノードからフィードバックされた遅延と推定速度、およびそれ らの経路状態の測定に用いたパケット以降の送信履歴をもとに現状の経路遅延を予 測し、この予測遅延が予め定めた閾値未満となる時刻に次のパケットを送信する。こ れをパケットブロック転送方式に応用した場合のフロー制御プロトコル動作例を図 4を 用いて説明する。
[0102] 図 4において、「101時刻」数直線は転送ノード 101上の時刻、「102時刻」数直線 は転送ノード 102上の時刻を表す。またノード 102上の時刻 T以降では、 T以前より経 路の帯域が低下したと仮定している。転送ノード 101は、時刻 ts(a)にパケットブロック 300-aを送信しており、その先頭は時刻 tb(a)に転送ノード 102に届いている。 tb(a)は 無負荷時にパケットブロック 300-aの先頭が受信ノードに届く時刻を意味する。
[0103] つまりノード 101において ts(a)以前には負荷がないので、パケットブロック 300-aの 先頭は無負荷時の遅延のみでノード 102に届く。ノード 102ではリーダパケット 302- a、データパケット 301-1の受信時刻から計算した推定速度およびリーダパケット 302 -aに搭載されたタイムスタンプと転送ノード 102の受信時刻から推定した遅延の情報 とを、 ts(l)に転送ノード 102から転送ノード 101に送信するパケットブロック 300- fのリ ーダパケット 302-fに収容することでノード 101に通知する。
[0104] ノード 101はパケットブロック 300- aに続き、経路の帯域が一定とみなしてパケットブ ロック 300-bを送信している。パケットブロック 300-bを送信後に 302-fの受信により 経路情報 (推定速度および遅延)を更新するが、これは時刻 T以前の情報であるので ノード 101は経路帯域が依然 300-a送信時と同じく無負荷状態と判断して時刻 ts(c) にパケットブロック 300-cを送信する。このときノード 101は、以下の方法で時刻 ts(c) を決定する。すなわち、受信したパケット 302-fに含まれる経路情報 (推定速度およ び遅延)、および、その経路情報の測定に使われたパケットブロック 300-a以降の送 信履歴から求めた、パケットブロック 300-cの先頭が受信されると予測される時刻 c) を、無負荷時予測到着時刻 tb(c)に、閾値 thを加えた値と同じか又は早い時刻として 決定している。
[0105] ここで無負荷時予測到着時刻 tb(c)とは、 ts(c)の時点で通信経路が無負荷としてパ ケットを送信した場合にその先頭が受信ノード 102に到着する予測時刻である。した がって ts(c)の時点でノード 101は、パケットブロック 300- cの先頭が tb(c)+thに届くと 予想している。またパケットブロック 300-cのサイズは、末尾の予測到着時刻が、 tb(c) に最大余剰遅延 toをカ卩えた tb(c)+toまでに収まるよう決定されている。
[0106] また、最大余剰遅延とは、これ以上の遅延が予測される経路からはパケット送信を しないとする閾値を示している。即ち「最大余剰遅延が to」のときには、送信側ノード がパケット Pを経路 rから送信する際の予測到着時刻が送信時刻—to以降となる送信 時刻になるまではパケット Pの経路 rを用いた送信をしない。逆に、予測到着時刻く現 在時刻 toである経路からは、パケットを即時に送信可能である。
[0107] しかし本実施形態では、実際には経路帯域は時刻 Tを境に小さくなつているので、 パケットブロック 300- bの伝播遅延はノード 101の予測より大きぐパケットブロック 30 0-cの受信開始は tf' (c)まで遅れ、また末尾のデータパケット 301-9の受信完了時刻 も予測した tb(c)+toより遅れて、ば,(d)となっている。ノード 102は ts(g)にパケットブロッ ク 300-gを送信しており、このリーダパケット 302-gにはパケットブロック 300-b受信に より検出した、経路情報 (即ち、経路帯域が低下した情報)が含まれる。このようにノー ド 101はパケット 302-gの受信により、経路帯域の低下を知るので、それに合わせて 経路情報を更新し、更新以前には ts(d)に送信予定だった次のパケットブロック 300-d の送信時刻を ts,(d)に変更する。またノード 101から 102へ送信するパケットブロック のサイズも 300- b,
300-cに比べ小さく変更して!/、る。
[0108] 以上の判断は、更新された経路情報および送信履歴を用いて求めた、ブロック先 頭の予測到着遅延 d)が、 tb(d)+th以下となり、また末尾の予測到着時刻が tb(d)+to 以下になるよう送信時刻とブロックサイズを計算した結果である。実際には ts(g)以降ば (d)までの間にも経路状態は変動するので、図では実際に先頭が届く時間ば' (d)は d )とずれている。
[0109] このずれも、次の測定結果のフィードバックにより以降のパケットブロックの送信スケ ジユーリングに反映される。以上のような動作により、 PACスケジューラは予測到着時 刻のずれを修正するよう送信タイミング制御を行い、帯域の有効利用と遅延抑制の 両立を図る。先に説明したウィンドウ制御は往復遅延に対する制御を提供するが、 P ACスケジューラではさらに、経路の片道ごとの遅延を個別に測定、フードバックする ため、往路と復路の状態が異なる経路において、各々に適した制御ができるメリットが ある。例えば往路の帯域が現状の負荷に対して大きぐ復路の帯域が逆に現状の負 荷に対して小さい場合に、復路の遅延の増大のみが増大する。このとき往復遅延に 基づく制御を行っていると往路、復路ともの送信側ノードが当該経路への負荷を減ら すので、結果として、往路の帯域を有効に活用できなくなる。ところがこのとき往路と 復路の遅延を別個に監視して ヽれば、往路の負荷軽減が必要な ヽことが分かるので 、往路の帯域を有効に活用できる。
[0110] 上記フロー制御プロトコルの動作を実現するためにスケジューリング部 202が従うフ ローチャートを図 5に、パケットブロック作成部 203が従うフローチャートを図 6に示す 。スケジューリング部 202は記憶部 205の記憶内容の更新の度に次にパケットブロッ クを送信可能とする時刻とブロックサイズを決定してパケットブロック作成部 203に通 知する。 [0111] まず、図 5について具体的に説明する。 S51の処理では、記憶部 205より、経路状 態情報またはパケット送信履歴情報の更新がされるとそれらの通知を受ける。次に、 最新の送信経路状態情報と、該送信経路状態情報が有効となる送信済みパケット以 降の送信履歴より、つぎに送信するパケットの先頭の到着予測時刻が無負荷時の到 着予測時刻 (tb)に閾値 (th)を加えた時刻と等しくなるように、次のパケット送信時刻 (tl) を計算する(S52)。次に、最新の送信経路状態情報から、最大余剰遅延 toの伝播 遅延をもたらすと予測されるデータ量 (d)を計算する(S53)。そして、以上で求めたパ ケット送信時刻 (tl)およびデータ量 (d)をパケットブロック作成部 203に通知 (S54)して 処理を終了する。
[0112] パケットブロック作成部 203は、バッファ部 201にデータがあり、かつパケットブロック が送信可能である場合に、スケジューリング部 202から通知されたブロックサイズ以 内のサイズのパケットブロックを構成してパケット送信部 204に渡す。
[0113] 図 6では、起点となる状態が waitと idleの 2種類ある力 これは「送信可能となる時刻 になって力もパケットブロックを送信する」処理がタイマの援用により実現されているた めである。このタイマの満了を待つ間はスケジューリング部 202は wait状態に留まる。 一方 idle状態は、タイマを待ってもいないし、処理すべきデータも受信していない状 態である。
[0114] 以下、図 6について説明する。
[0115] まず、 idle状態時について説明する。この状態においては、「バッファ部 201より新 規パケット受信通知を受信」した場合 (S61)、または、「スケジューリング部 202から、 パケット送信時刻 (tl)およびデータ量 (d)の更新通知を受信」した場合 (S62)に処理が 開始される。処理が開始されるとまずパケット送信時刻 (tl)≤現在を判断する (S63)。 この判断の結果が Noであれば、時刻ばに満了するようにタイマを起動し処理を終了し (S64)、 wait状態となる。また、 S63の判断の結果が Yesの場合、最新の受信経路状 態情報および Ack情報を含むリーダパケットを作成する (S65)。次に、ノ ッファの先頭 力 パケットブロックサイズがデータ量 (d)以下となる最大量のデータをバッファ部 201 力も取り出してデータパケット郡を作成する (S66)。次に、リーダパケットおよびデータ パケット郡をパケット送信部 204に送信する (S67)。次に、送信記録を記憶部 205に 書き込み (S68)処理を終了 Udle状態に戻る。
[0116] 次に、 wait状態時について説明する。 Wait状態時にスケジューリング部 202から、 パケット送信時刻 (tl)およびデータ量 (d)の更新通知を受信」した場合 (S71)の処理は 上記 idle状態時にスケジューリング部 202から、パケット送信時刻 (tl)およびデータ量( d)の更新通知を受信した場合の処理と同じである。
[0117] また、 wait状態時に、送信タイマが満了した場合の処理は、上記 idle時の S65〜S6
8の処理と同じ処理を行う。
[0118] なお、以上のアルゴリズムの説明において、記憶部 205の記憶内容が更新された 際のスケジューリング部 202への通知は記憶部が行っている力 これをパケット解析 部 207、パケットブロック作成部 203またはパケット送信部 204が行っても同様な動作 が実現される。
[0119] 上記 PACスケジューリングを実施した場合、 tb(a)等を求めるために無負荷時の経 路遅延の知識が必要になる。これは予め計測しておき定数として扱うこともできるが、 経路状態や時計のドリフト等の影響を避けるために更新した 、場合、次のような手順 で通信中にこれを行うことができる。まず、受信側ノードのパケット解析部 207におい て、あるパケットブロック Aの末尾の受信時刻から次のパケットブロック Bの先頭の受信 時刻の間に間隔があるとき、経路には余裕があり、パケットブロック Bの先頭パケットは 無負荷状態で到着したと考えられる。
[0120] 図 4の例では、パケットブロック 300- bのリーダパケット 302- bは直前のパケットブロ ック 300-aの末尾の受信時から間隔を置 、て受信して 、るので、無負荷状態で到着 している。このような間隔を検出したときに、転送ノード 102はパケット 302-bが無負 荷で到着したことを示す情報を送信ノード宛のリーダパケット 302-gに含めることで、 無負荷遅延検出を転送ノード 101に伝える。
[0121] リーダパケット 302-gを受信した転送ノード 101は、無負荷時の経路遅延値を 302- bの遅延に更新する。
[0122] また、 PACスケジューラを用いる場合には、定期的に無負荷遅延値を用いる。この ため、一定時間以上無負荷遅延が検出されな力つた場合には、ブロック送信閾値と なる余剰遅延 thを負の値とすることで、強制的に無負荷での転送を誘発するようにす れば、一定時間以内の周期での負荷時経路遅延値が実現できる。そのために、 thく 0 として経路に全く負荷がかかって 、な 、状態でしか、データが送信できな 、ような状 態を作り出している。
[0123] 以上説明したように、転送ノード 101および 102内の構成要素各々の動作により、 通信経路の遅延及び速度の監視結果をフィードバックし、パケット流量制御を行うの で、本発明では、経路情報 (推定速度および遅延)を考慮したパケット送信が可能と なる。また、このようにシグナリング情報をリーダパケットに集約して通信しているため に、受信側でのフロー制御情報の抽出、送信側でのスケジューリング情報の更新とも に、従来例のようにパケット送受信と同じ頻度で行うのではなぐパケットブロック送受 信の頻度で行うので、転送ノードの処理負荷が軽減される。
[0124] また一つのパケットブロックに含まれるパケット数が一定以上であれば、シグナリン グ情報をデータパケットから省略し、リーダパケットに集約する分、同じデータ量に対 して従来例に比べパケットサイズの合計を低く抑えられる効果がある。さらにパケットト レイン方式による高精度な経路帯域推定を、速度測定のためにのみ用いられる専用 プローブパケット (ダミーパケット)等を用いて帯域利用効率を損なうことなく行うことが できる。
[0125] なお、以上の説明では速度測定の有効性を最大化するために、同一パケットブロッ ク内のパケットは同時に送信しているが、本発明の実施としては、同時ではなぐボト ルネック帯域よりも高 、レートで複数のパケットを一定の送信速度で送信してもよ 、。 受信側で計測されるパケットの分散はボトルネック帯域を反映するので、帯域推定が 可能だからである。
[0126] その場合には、経路のボトルネック帯域が送信速度以上であると推定速度が得られ ないが、例えばある特定の速度を必要とするアプリケーション力 経路がその速度以 上で転送可能カゝ否かを判断することはできる。理由は、受信レートが送信レートより低 い場合には経路の速度により転送レートが制限されていることになり、速度が測定で きるからである。また、そうでなくても、経路速度が送信レート以上であることは分かる からである(経路上、送信レートよりも低いレートのリンクが存在しないため)。送信速 度を一定以下に保つことで、同時に送信する場合に比べ経路に加わる負荷を抑えら れるために、過剰負荷によるパケット損失の可能性を低下させることができる。
[0127] 以上説明した第 1の実施例ではフロー制御情報として経路遅延及び帯域の監視情 報 (経路情報)のみを含めていたが、その他に受信確認情報などを含めてもよい。例 えばリーダパケットの受信確認と、対応するパケットブロック内で受信できて 、な ヽデ ータパケットの識別情報 (再送制御情報)を含めると、送信側が再送すべきパケットを 正確に同定することができる。
[0128] リーダパケットが損失している場合には、例えばリーダパケットの損失を示す情報と 、 TCPで用いられるのと同様な、シーケンス番号に基づく Ack情報を併用することで 送信の完全性が保たれる。例えば、リーダパケットにもシーケンス番号を付与し、受 信側が Ack情報を返すようにすれば、 Ackされて ヽな ヽパケットを送信側が再送する ことで、リーダパケット、データパケットともに無損失の転送を保障できる。
[0129] また第 1の実施例ではリーダパケットは単一としている力 冗長性のために複数にし ても構わない。その際同一のパケットのクローンを作成してもよいし、複数のリーダパ ケットを合わせてブロック全体のブロック制御情報がカバーされるようにしてもょ 、。
[0130] また本発明におけるリーダパケットは、パケットブロックが複数のデータパケットから 成る場合にはデータ本体を含んでいてもよぐまたブロック管理情報がブロック内パケ ットを識別するのに既存の識別子、例えば IPヘッダ内の Identificationフィールドを用 いる場合には、データパケットにブロック被管理情報は不要である。
[0131] また、これらの「リーダパケットがユーザデータを含まない」「データパケットはブロッ ク費管理情報を含む」という限定を除いても、本発明の特徴である、リーダパケットに ブロック内パケットおよびそれらからのフロー制御情報生成方法を同定できる情報を 付与すること、また受信側ノードで、受信パケットが所属するパケットブロックに応じた フロー制御情報の生成を行うことは可能であるためである。
[0132] なお、上述の制御情報は、ルーティング情報であってもよ!/、。
[0133] また送信されるパケット全てがいずれかのパケットブロックに属する必要はなぐ例 えば定期的な回線監視を行うときのみパケットブロックを構成して送信し、監視結果を 得た後は次の監視時刻までの間は各データパケットを単独で送信してもよい。
[0134] (第 2の実施例) 次に本発明の第 2の実施例について説明する。図 7に、本実施例で用いられる転 送ノード 101および 102の構成を示す。転送ノード 101の構成は第 1の実施例で用 いた図 1のものと同様である力 転送ノード 102は複数のパケット受信部 206および パケット送信部 204を有している。転送ノード 101と 102の間にある IP網 400は、転送 ノード 101のパケット送信部 204力も転送ノード 102のパケット受信部 206- 1への経 路と、パケット受信部 206-2への経路を与え、それぞれの経路は一般に物理的に離 れたリンクを含み、帯域や遅延は互いに独立に変動するものとする。同様に、転送ノ ード 102のパケット送信部 206- 1から転送ノード 101のパケット受信部 204への経路 と、パケット受信部 204-2からの経路の帯域や遅延も、互いに独立に変動するものと する。
[0135] 本実施例は以上のような、 2ノード間に複数の選択可能な経路がある場合への本発 明の適用例である。本実施例のパケット構造およびフロー制御のためのシグナリング 機構は、第 1の実施例と同様であるが、フロー制御情報およびスケジューリング情報 の内容、およびパケットブロックの構成が第 1の実施例と異なる。
[0136] 本実施例でのパケットブロックは、複数の経路の各々に送出されるデータパケットと 、 1つ以上のリーダパケットからなる。シーケンス番号は経路ごとに与えられるものとし 、リーダパケットはブロック管理情報としてタイムスタンプと、経路ごとのパケットブロッ ク内パケットのシーケンス番号範囲を含む。パケット解析部 207による遅延及び速度 の推定も、経路ごとに行われる。同様にリーダパケット上のフロー制御情報も、経路ご との遅延及び速度推定結果を含む。
[0137] 図 7に示されるパケットブロック 300-1および 300— 2は、選択可能な経路が 2つで 、リーダパケットが 1つの場合の例である。パケットブロック作成部 203は複数経路に 対して 1つのパケットブロックの作成を行い、パケット送信部 204はブロック内の各パ ケットにっき、パケットブロック作成部 203が指示した経路を経由して送出する。
[0138] パケットトレイン方式による経路帯域推定は当該経路に 2つ以上のパケットが同時ま たは該経路のボトルネック帯域以上の送信速度で送信されたときに可能となるので、 帯域推定を可能とするためには 1つのパケットブロックにっき各経路から 2つ以上の パケットが送信される必要がある。このためパケットブロック構成の結果送信パケット 力 siつになった経路に対しては、送信対象のパケットとともにダミーパケットを送信す る。このダミーパケットの内容は、例えばシーケンス番号だけでよい。
[0139] 本実施例で用いるフロー制御アルゴリズムとしては、第 1の実施例で用いるフロー 制御アルゴリズムの例として挙げたものを拡張して適用することができる。
[0140] 第 1の実施例における第 1のフロー制御アルゴリズムの例として説明したウィンドウ 制御方式は、第 2の実施例においては以下のように拡張される。リーダパケットには 全経路の Ack情報および受信ウィンドウサイズを含める。リーダパケットを受信した転 送ノードのスケジューリング部 202は、各経路の送信可能データ量を後に示すように 計算してパケットブロック生成部 203に通知する。
[0141] パケットブロック生成部 203は、パケットブロックの各経路部分が送信可能データ量 を超えな!/、ようにバッファ部のデータを取り出し、各経路への割り当てを決定する。
[0142] ただし送信可能データ量が、予め定めた下限に満たな 、経路に対しては、データ の割り当てを行わない。リーダパケットは、最も送信可能データ量が大きい経路に割 り当てる。同じリーダパケットを、冗長化のために他の経路にも割り当ててもよい。
[0143] また、リーダおよびデータ合わせて 1パケットし力割り当てられない経路に対しては、 併せてダミーパケットを割り当てる。ブロック内の各パケットに対する割り当て経路が 決定したら、割り当て情報とともに全てのブロック内パケットをパケット送信部 204に渡 す。
[0144] パケット送信部 204に渡したパケットの情報は送信履歴として記憶部に記録する。
受信側ノードにおける受信ウィンドウサイズの決定は、第 1の実施例におけるのと同 様に行われる。
[0145] 第 1の実施例における第 2のフロー制御アルゴリズムの例として説明した P ACスケ ジユーラ方式は、第 2の実施例においては以下のように拡張される。 2つの経路を含 む場合の動作を、図 8を用いて説明する。図 8には、 2つの経路に対応して 2本の時 刻数直線があり、それぞれ各経路を経由したパケットの到着予測シーケンスが示され ている。
[0146] n番目の経路の対し、 tb、ば、 th、 toはそれぞれ tb(n)、 n)、 th(n)、 to(n)と示されてお り、それぞれの意味は図 4におけるものと同じである力 示されているパケットが実際 の到着シーケンスではなく、送信側ノードが予測した到着シーケンスである点が異な る。送信側ノードは、いずれかの経路について、 tb(n)+th(n)く t n)であればパケット ブロック送信可能とする。図 8では、 tb(l)+th(l)く 1)であるので、即座に送信可能 である。
[0147] スケジューリング部 202は、リーダパケット 302の到着予測時刻を各経路について 計算し、最も早く到着すると予測される経路にリーダパケット 302を送信するようパケ ットブロックを構成する。図 8では、リーダパケット送信経路として経路 2が選ばれてい る。
[0148] 次にバッファ部 201にある最初のパケット 301- 1のデータサイズを取得し、リーダパ ケットと合わせて送信した場合に最も早く到着すると予測される経路に配する。図 8で は、最初のデータパケット 301-1は経路 1に配されている。以下 1つずつブロック内パ ケットを増やして同様に配置し、どの経路についても、送信されるパケットサイズの和 が tb(n)+to(n)以下となるような最大の送信パケット数が求まったところでパケットブロッ クの構成が決定する。
[0149] 図 8では、経路 1と 2合わせて 5つのデータパケット 301- 1から 301- 5を含むパケット ブロック 300を構成して!/、る。
[0150] 以上説明した、拡張されたウィンドウ制御および PACスケジューリングでは、リーダ パケットを最も低遅延と予測される経路力 送信することで、より遅延の大きい経路に 関するフロー制御情報の通知も、最も低遅延な経路と同等の遅延で行うことができる
[0151] し力 受信ノードにおけるパケット受信から、その受信状態に基づき生成したフロー 制御情報が送信ノードに通知されるまでに力かる時間には、フロー制御情報の伝送 遅延のみでなぐパケット受信力 フロー制御情報の送信までの待機時間が含まれる
。この待機時間は、最大でブロック送信間隔となるので、ノード処理負荷軽減、バケツ トトレイン方式での経路帯域推定の精度や、帯域の有効活用のために経路上にバッ ファするデータ量を一定以上に保つなどの目的でブロックあたりの各経路への割当 量を大きくすると、フロー制御情報フィードバック遅延の増大をもたらす。
[0152] 以下では、同等な遅延の経路が複数存在する場合に、各経路のブロックあたりの データ量を一定以上に保ちつつ、フロー制御情報送信までの待機時間も低減するた めの第 3のフロー制御アルゴリズムについて、図 9を参照して説明する。
[0153] 図 9では、図 4と同様、「101時刻」数直線は転送ノード 101上の時刻、「102時刻」 数直線は転送ノード 102上の時刻を表す。ただし転送ノード 101と転送ノード 102の 間には経路 1と経路 2の 2つの経路があるものとし、それぞれの経路を経由したバケツ トについて、転送ノード 101による、転送ノード 102上での受信シーケンスの予測を「 経路 1受信予測」および「経路 2受信予測」線上に示している。
[0154] 各パケットブロックは基本的に 1つの経路のみで構成する。各経路のパケットブロッ クのブロックサイズは、ブロック内パケットの伝送遅延が一定、即ち、どの経路のブロッ クも (ブロックに含まれるパケットサイズの合計/経路の速度)が同じになるように定めら れる。その上で各パケットブロックは、ブロック内パケットの伝送遅延 Zシグナリングに 使用可能な経路数で定義されるブロック送信周期 tiだけずらして送信され、これがリ ーダパケット送信の周期となる。
[0155] すると図 9に示されるように、経路 1を用いるパケットブロックと経路 2を用いるバケツ トブロックの到着は交互となる。このようにパケットブロック送信をスケジューリングする ことで、速度推定に使われるパケットトレインの長さに比べリーダパケットの送信間隔( フィードバック周期)を短くすることができる。
[0156] これは、第 1の実施例のように 1つの経路のみを用いてパケットブロックを送信する 場合には、リーダパケットの到着間隔は、パケットトレインの長さとほぼ等しいのに対し 、図 9に記載のように複数の経路を用いてパケットブロックを送信する場合は、リーダ パケットの到着は、パケットトレインの長さより短い tiの間隔で受信可能となるからであ る。
[0157] 経路状態が変動する場合には必ずしも図 9のように定期的なレポートの到着が保障 されな ヽ。例えば時刻 a)と時刻 t c)の間で経路 1の速度が低下すれば、リーダパケ ット 302- cの到着は t c)よりも遅くなる。このような場合には、ノード 101は ts(l)または ts (g)にノード 102より送信されたリーダパケットの情報により速度変化を検知し、 ts(d)に 送信されるパケットブロック 300-dのデータ量を、ノード 102において先頭から末尾ま での受信にかかる時間(受信完了時間)が t港度以下になるよう調節する。また 300- dの次に送信するパケットブロックも、受信完了時間が t港度以下となるサイズとして、 経路 2から送信する。以降、経路 1が送信可能な状態、つまり tb+thく tfとなるまでは、 経路 2からのみ受信完了時間が t港度以下となるサイズのパケットブロックを送信する 。以上のようにして、経路状態の変化により経路 1の遅延が大きくなつている状態にお いても、リーダパケットの送受信周期を ti程度以下に保つことができる。
[0158] 逆に例えば時刻 t a)と時刻 t c)の間で経路 1の速度が上昇すると、リーダパケット 3 02- cの到着は c)よりも早くなる。このような場合には、ノード 101が速度変化を ts(c) と ts(d)の間で検知し、次の経路 1経由のリーダパケットの到着予定時刻 e)までの間 に到着可能なデータ量だけ経路 1経由のパケットを、 ts(d)に送信されるパケットプロ ック 300- dに加える。このときパケットブロック 300- dは経路 1, 2双方のパケットを含む 。 300-e以降のパケットブロック送信に関しては、ブロックサイズを新たな速度に対し 伝送遅延が tiの使用可能経路数倍以内となるよう再決定する。このとき、リーダバケツ ト到着間隔は速度変化前と同様に ti以内に保たれる。一方、パケットブロックに占める リーダパケットのデータ量の割合は小さくなるため、帯域利用効率は向上する。
[0159] 以上説明した第 2の実施例によれば、各通信経路の遅延及び速度の監視結果を 反映した各経路への負荷分散が可能となる。
[0160] 本発明は送信側での送信タイミングの決定および送信経路の決定を、従来例のよ うに単一パケットまたはパケットペアごとに行うのではなぐパケットブロック単位で行う ので、パケットブロックのデータ量を大きくすると転送ノードの送信処理に力かる負荷 が軽減される。
[0161] またシグナリング情報をリーダパケットに集約したために、受信側でのフロー制御情 報の抽出、スケジューリング情報の更新ともに、従来例のようにパケット送信と同じ頻 度で行うのではなぐパケットブロック送信の頻度で行うことになるので、転送ノードの 受信処理に力かる負荷が軽減される。
[0162] また、シグナリング情報が集約されたリーダパケットを最も早く到着する経路からパ ケットブロックの先頭として送出することで、遅延の大きい経路の状態情報を、当該遅 延の大きい経路自身を用いてフィードバックする場合に比べ短時間でフィードバック できる効果がある。また各経路のパケットブロックに含まれるパケット数が一定以上で あれば、シグナリング情報をデータパケットから省略する分、同じデータ量に対して従 来例に比べパケットサイズの合計を低く抑えられる効果がある。
[0163] さらに上記第 2の実施例におけるように、パケットトレイン方式による高精度な経路 帯域推定を、専用プローブパケット等を用いて帯域利用効率を損なうことなぐ行うこ とがでさる。
[0164] 以上では、主に転送すべきデータが多い、高負荷の状態での動作を説明している 。低負荷の時には、送るべきデータがバッファ部にないので、定期的にダミーパケット などを送信して回線の状態を監視する必要がある。
[0165] その場合、単一パケットブロックに含まれるパケット数が小さくなるため、速度推定の 精度が高負荷時に比べ不足する。このような場合にも、連続するパケットブロックに含 まれるパケットを連結して考えることで、速度推定精度を一定以上に保つことができる 。図 10を参照して説明する。図中、 3つのパケットブロック 300- a、 300- b、 300- cに 属するパケットがある経路上で受信されており、先行するパケットブロックの末尾と次 のパケットブロックの先頭の間には何も受信されていない時間がある。
[0166] このような場合、受信速度の推定は、パケットブロック 300-bに含まれるデータパケ ット 301-2、 301-3が 301-1の直後に受信されたと仮定して行う。また同様に、パケ ットブロック 300-cに含まれるデータパケット 301-4は 301-3の直後に受信されたと 仮定する。すると、パケットブロック 400のような仮想パケットブロックが構成される。こ のとき、データパケット 301- 2、 301- 3の受信に要した時間はパケットブロック 300- b の受信時に測定したパケット 302-bとパケット 301-3の受信時間差を、またデータパ ケット 301-4の受信に要した時間はパケットブロック 300-cの受信時に測定したパケ ット 302- cとパケット 301- 4の受信時間差を用いる。そして仮想パケットブロック 400 のデータパケット受信に要した時間は、 300-a、 300-b、 300-cの受信時に測定した データパケットの受信所要時間の合計とする。受信速度は、仮想パケットブロック 400 のデータパケット受信に要した時間で 301-1から 301-4までの 4つのデータパケット のデータ量の合計を割った値と推定する。
[0167] リーダも含め 5つのパケットから成る仮想パケットブロック 400を用いて速度推定を 行うことで、より構成パケット数が少ないパケットブロック 300- a、 300- b、 300- cに比 ベ測定精度向上の効果が期待できる。
[0168] (第 3の実施例)
以下では、リーダパケットのブロック管理情報として含める情報により新たな機能を 実現する実施例について説明する。図 11は,本発明の第 3の実施例として、ブロック 管理情報 500に、送信側ノードが予測した各リンクの速度と、ブロック内データのサイ ズを含めて、通信異常の早期検出を可能とする動作の概略を示している。
[0169] 図 11は、ある経路につきシーケンス番号 1から 6のパケットを含むパケットブロックを 、当該リンクの速度が 350Kbpsと推定した場合に第 3の実施例において送信されるブ ロック管理情報と、受信側ノードにおけるデータパケット受信タイミングの関係を示し ている。図 11下部の時刻の数直線は、受信ノードにおける実際のパケット到着シー ケンスを示す。
[0170] 受信ノードは、パケット 2までは送信ノードの予測通りの速度で届いているので何も しないが、パケット 3で到着間隔の伸びを検出し、送信側の予測速度と実際の転送速 度のずれが生じたことを認識する。ずれが一定以上と判断したところで異常レポート を作成し返信することで、送信ノードがリンク状態を誤認識している時間を最小限に でき、フロー制御動作の追従性が向上する。
[0171] (第 4の実施例)
次に、ユーザフロー単位でのパケットロスの早期検出を可能とする第 4の実施例に ついて説明する。
[0172] 図 12は、本発明の第 4の実施例におけるブロック管理情報と、受信側ノードでのデ ータパケット受信シーケンスの例を示している。ブロック管理情報 500には、ブロック 内各パケットのユーザフロー情報が含まれている。ここでユーザフローとは、パケット の到着順序を保存する対象となる、エンドホスト間パケット転送セッションを指し、各ュ 一ザフローにはユニークな IDが付与されているものとする。
[0173] またユーザフロー内の各パケットには、ユーザフロー内でユニークなシーケンス番 号力 経路ごとのシーケンス番号とは別に付与されているものとする。図では、送信ノ ードはある経路につき 4から 11までのシーケンス番号のパケットを含むパケットブロッ クに、 2049と 2050という 2つのユーザフロー力含まれている。図 12下部の時刻の数 直線は、受信ノードにおける実際のパケット到着シーケンスを示す。
[0174] 図 12の例では、送信した結果、パケット 5とパケット 6が損失する力 パケット 7の受 信により損失は検出される。また損失したパケット 5と 6がそれぞれフロー 2049の # 1 4とフロー 2050の # 41であることがフロー管理情報 500により分かるので、それまで に到着したこれら 2つのフローに属するパケットは、損失パケットの到着を待たずに転 送される。
[0175] 経路ごとおよびユーザフローごとに別個のシーケンス番号を付与する従来例には 非特許文献 8があるが、該従来例でも損失パケットのユーザフロー情報は提供されず 、したがって特定のユーザフローのパケットが順序どおりに届いていない場合に、原 因がパケットロスか逆多重化リンク通過による順序逆転かを判断することはできなかつ た。そのため原因がパケットロスであった場合にも、順序逆転を想定して一定時間転 送を保留せざるを得な力つた。本実施例は損失したパケットのユーザフローごとのシ 一ケンス番号を受信ノードが知ることができるので、パケット損失を順序逆転と混同す ることなく確実に検出できる。したがってパケット損失検出の際には転送保留を省略 でき、エンドホスト間セッションのジッタを軽減する効果がある。
[0176] (第 5の実施例)
次に本発明の第 5の実施例として、ブロック管理情報に図 13に示されるような、プロ ック内データパケットのデータ共通部分に関する情報を含めることでデータ圧縮を可 能とする動作の概略を説明する。ここで圧縮対象となるデータパケットは、データ領 域内に共通の部分を含むこととする。図中、開始シーケンス番号および終了シーケン ス番号はデータ圧縮対象となるパケットの範囲を示す。
[0177] また開始ビットおよび終了ビットは、圧縮対象パケットのデータ領域のうち共通な範 囲を、ビット位置の視点と終点により示すものである。開始ビット〜終了ビット間データ には、開始ビットから終了ビットまでの間の共通データが収容される。以上の圧縮情 報をブロック管理情報に含める一方、そこで指定した共通データはデータパケットの データフィールドから削除することで送信パケットサイズの総量を低減する。
[0178] 以上のようなデータ圧縮は、特にデータ自体が他のプロトコルのヘッダを含み、共 通部分が大き 、場合に有効である。共通部分が異なるパケットの組み合わせやビット 範囲に複数存在する場合には、図 13に示すような圧縮情報を複数、ブロック管理情 報に含めればよい。本実施例による送信データ圧縮は、圧縮状態を送受信ノード間 で共有するためのシグナリングが必要な従来のデータ圧縮方法に比べ制御が簡略と なる。
[0179] なお、上述の制御情報は、ルーティング情報であってもよ!/、。
[0180] 本発明のノード 101、 102等は、その動作をノヽードウエア的に実現することはもちろ んとして、各部の機能を実行するプログラムをコンピュータで実行することにより、ソフ トウエア的に実現することもできる。このプログラムは、磁気ディスク、半導体記憶装置 その他の記録媒体に保持され、その記録媒体力 コンピュータに読み込まれ、その 動作を制御することにより、上述した機能を実現できる。

Claims

請求の範囲
[I] 複数のデータパケットとリーダパケットとを 1つのブロックとし、
前記複数のデータパケットに関する制御情報を、前記リーダパケットにまとめて送信 し、
受信したリーダパケットの制御情報に基づ 、て、パケットの送信を制御することを特徴 とする通信方法。
[2] 前記制御情報は、フロー制御情報であることを特徴とする請求項 1記載の通信方法
[3] 前記制御情報は、再送制御情報であることを特徴とする請求項 1記載の通信方法。
[4] 前記制御情報は、ルーティング情報であることを特徴とする請求項 1記載の通信方 法。
[5] 前記制御情報は、経路情報であることを特徴とする請求項 1記載の通信方法。
[6] 前記制御情報は、前記データパケットに共通する制御情報であることを特徴とする 請求項 1に記載の通信方法。
[7] リーダパケットを一意に識別する識別情報を前記データパケットに含めることを特徴 とする請求項 1に記載の通信方法。
[8] 制御情報をまとめたデータパケットを一意に識別する識別情報を前記リーダバケツ トに含めることを特徴とする請求項 1に記載の通信方法。
[9] 前記複数のデータパケットまたはリーダパケットが、複数の回線を経由して送受信さ れることを特徴とする請求項 1に記載の通信方法。
[10] 前記リーダパケットは、前記複数回線中最速の回線を用いて送信することを特徴と する請求項 9に記載の通信方法。
[II] 前記制御情報に基づいて、前記リーダパケットまたは前記データパケットを送信す る回線を選択することを特徴する請求項 9に記載の通信方法。
[12] 受信したリーダパケットに含まれる制御情報に基づき送信するブロックのデータ量を 決定することを特徴とする請求項 1に記載の通信方法。
[13] 受信したリーダパケットに含まれる制御情報に基づき送信するブロックの送信時刻 を決定することを特徴とする請求項 1に記載の通信方法。
[14] 同一のブロックに属する複数のデータパケットの受信時刻から通信経路の速度を推 定することを特徴とする請求項 1に記載の通信方法。
[15] 複数のデータパケットとリーダパケットとを 1つのブロックとして扱い、前記複数のデ ータパケットに関する制御情報を前記リーダパケットにまとめるパケットブロック作成手 段と、
受信したリーダパケットにまとめられた制御情報に基づ 、て、パケットの送信を制御 するスケジューリング手段と、
を有することを特徴とする通信システム。
[16] 前記制御情報は、フロー制御情報であることを特徴とする請求項 15記載の通信シ ステム。
[17] 前記制御情報は、再送制御情報であることを特徴とする請求項 15記載の通信シス テム。
[18] 前記制御情報は、ルーティング情報であることを特徴とする請求項 15記載の通信 システム。
[19] 前記制御情報は、経路情報であることを特徴とする請求項 15記載の通信システム
[20] 前記パケットブロック作成手段は、前記データパケットに共通する制御情報を前記リ ーダパケットにまとめることを特徴とする請求項 15に記載の通信システム。
[21] リーダパケットを一意に識別する識別情報を前記データパケットに含めることを特徴と する請求項 15に記載の通信システム。
[22] 制御情報をまとめたデータパケットを一意に識別する識別情報を前記リーダバケツ トに含めることを特徴とする請求項 15に記載の通信システム。
[23] 前記複数のデータパケットまたはリーダパケットを複数の回線を経由して送信する 送信手段を有することを特徴とする請求項 15に記載の通信システム。
[24] 前記スケジューリング手段は、リーダパケットを前記複数回線中最速の回線を用い て送信するように制御することを特徴とする請求項 23に記載の通信システム。
[25] 前記スケジューリング手段は、制御情報に基づ!、て、前記リーダパケットまたは前記 データパケットを送信する回線を選択することを特徴する請求項 23に記載の通信シ ステム。
[26] 前記スケジューリング手段は、受信したリーダパケットに含まれる制御情報に基づき 送信するブロックのデータ量を決定することを特徴とする請求項 15に記載の通信シ ステム。
[27] 前記スケジューリング手段は、受信したリーダパケットに含まれる制御情報に基づき 送信するブロックの送信時刻を決定することを特徴とする請求項 15に記載の通信シ ステム。
[28] 同一のブロックに属する複数のデータパケットの受信時刻から通信経路の速度を推 定するパケット解析部を有することを特徴とする請求項 15に記載の通信システム。
[29] 複数のデータパケットとリーダパケットとを 1つのブロックとして扱い、前記複数のデ ータパケットに関する制御情報を前記リーダパケットにまとめるパケットブロック作成手 段と、
他ノードから受信したリーダパケットにまとめられた制御情報に基づいて、パケットの 送信を制御するスケジューリング手段と、
を有することを特徴とするノード。
[30] 前記パケットブロック作成手段は、前記データパケットに共通する制御情報を前記リ ーダパケットにまとめることを特徴とする請求項 29に記載の通信ノード。
[31] リーダパケットを一意に識別する識別情報を前記データパケットに含めることを特徴 とする請求項 29に記載のノード。
[32] 制御情報をまとめたデータパケットを一意に識別する識別情報を前記リーダバケツ トに含めることを特徴とする請求項 29に記載のノード。
[33] 前記複数のデータパケットまたはリーダパケットを複数の回線を経由して送信する 送信手段を有することを特徴とする請求項 29に記載のノード。
[34] 前記スケジューリング手段は、リーダパケットを前記複数回線中最速の回線を用い て送信するように制御することを特徴とする請求項 33に記載のノード。
[35] 前記スケジューリング手段は、他ノードから受信したリーダパケットにまとめられた制 御情報に基づ 、て、前記リーダパケットまたは前記データパケットを送信する回線を 選択することを特徴する請求項 33に記載のノード。
[36] 前記スケジューリング手段は、他ノードから受信したリーダパケットに含まれる制御 情報に基づき送信するブロックのデータ量を決定することを特徴とする請求項 29に 記載のノード。
[37] 前記スケジューリング手段は、他ノードから受信したリーダパケットに含まれる制御 情報に基づき送信するブロックの送信時刻を決定することを特徴とする請求項 29に 記載のノード。
[38] 同一のブロックに属する複数のデータパケットの受信時刻から通信経路の速度を推 定するパケット解析部を有することを特徴とする請求項 29に記載のノード。
[39] 複数のデータパケットとリーダパケットとを 1つのブロックとして扱い、前記複数のデ ータパケットに関する制御情報を前記リーダパケットにまとめるパケットブロック作成処 理と、
他ノードから受信したリーダパケットにまとめられた制御情報に基づいて、パケットの 送信を制御するスケジューリング処理と
をコンピュータに実施させることを特徴とするプログラム。
PCT/JP2007/050660 2006-01-23 2007-01-18 通信方法、通信システム、ノードおよびプログラム WO2007083687A1 (ja)

Priority Applications (3)

Application Number Priority Date Filing Date Title
US12/161,922 US20090059958A1 (en) 2006-01-23 2007-01-18 Communication method, communication system, nodes and program
JP2007554937A JP4780343B2 (ja) 2006-01-23 2007-01-18 通信方法、通信システム、ノードおよびプログラム
EP07706964A EP1981220A4 (en) 2006-01-23 2007-01-18 COMMUNICATION PROCEDURE, COMMUNICATION SYSTEM, NODES AND PROGRAM

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2006014458 2006-01-23
JP2006-014458 2006-06-05

Publications (1)

Publication Number Publication Date
WO2007083687A1 true WO2007083687A1 (ja) 2007-07-26

Family

ID=38287639

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2007/050660 WO2007083687A1 (ja) 2006-01-23 2007-01-18 通信方法、通信システム、ノードおよびプログラム

Country Status (6)

Country Link
US (1) US20090059958A1 (ja)
EP (1) EP1981220A4 (ja)
JP (1) JP4780343B2 (ja)
KR (1) KR20080079335A (ja)
CN (1) CN101379781A (ja)
WO (1) WO2007083687A1 (ja)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2009253663A (ja) * 2008-04-07 2009-10-29 Mitsubishi Electric Corp モバイルルータアドホックネットワーク通信システム
WO2011040006A1 (ja) * 2009-09-30 2011-04-07 パナソニック株式会社 送信装置、受信装置、送受信システム、及び送受信方法
JP2011160039A (ja) * 2010-01-29 2011-08-18 Brother Industries Ltd パケット送信装置、パケット送信方法及びパケット送信プログラム

Families Citing this family (44)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5103900B2 (ja) * 2006-12-28 2012-12-19 富士通株式会社 パス状態監視方法及び装置
JP2008199605A (ja) * 2007-02-12 2008-08-28 Asustek Computer Inc 無線通信システムにおいてリソース使用効率を向上させる方法及び装置
EP2003799A1 (en) * 2007-06-12 2008-12-17 Sony Deutschland Gmbh Adaptive history aware beam steering
JP4941753B2 (ja) * 2007-08-31 2012-05-30 横河電機株式会社 フィールド制御システム
US8270404B2 (en) * 2008-02-13 2012-09-18 International Business Machines Corporation System, method, and computer program product for improved distribution of data
US9047421B2 (en) * 2008-04-30 2015-06-02 Alcatel Lucent Serial link buffer fill-level compensation using multi-purpose start of protocol data unit timing characters
US8374091B2 (en) * 2009-03-26 2013-02-12 Empire Technology Development Llc TCP extension and variants for handling heterogeneous applications
WO2011033568A1 (ja) * 2009-09-17 2011-03-24 富士通株式会社 通信方法、通信システム、送信装置、受信装置
US8824285B1 (en) * 2009-12-16 2014-09-02 Dnutch Associates, Inc. System and method for collision detection and avoidance during packet based communications
US9515925B2 (en) 2011-05-19 2016-12-06 Qualcomm Incorporated Apparatus and methods for media access control header compression
US9125181B2 (en) * 2011-08-23 2015-09-01 Qualcomm Incorporated Systems and methods for compressing headers
EP2760182B1 (en) * 2011-09-21 2017-03-01 Fujitsu Limited Data communication apparatus, data transmission method, and computer system
US9479979B2 (en) * 2012-06-29 2016-10-25 Nokia Solutions And Networks Oy Success rate improvements for ANR measurements while reducing data loss at a UE
US9451469B2 (en) * 2012-07-23 2016-09-20 Intel Corporation Apparatus and method for tunneled GPM
EP2936739B1 (en) * 2012-12-21 2017-12-13 Telefonaktiebolaget LM Ericsson (publ) Method and node arrangement for providing more accurate estimation of data path conditions
KR102094718B1 (ko) * 2013-09-26 2020-05-27 삼성전자주식회사 무선 네트워크에서 학습에 기반한 중계 노드 선택 방법 및 중계 장치
US9729439B2 (en) * 2014-09-26 2017-08-08 128 Technology, Inc. Network packet flow controller
US10277506B2 (en) 2014-12-08 2019-04-30 128 Technology, Inc. Stateful load balancing in a stateless network
US9736184B2 (en) 2015-03-17 2017-08-15 128 Technology, Inc. Apparatus and method for using certificate data to route data
US9729682B2 (en) 2015-05-18 2017-08-08 128 Technology, Inc. Network device and method for processing a session using a packet signature
US9762485B2 (en) 2015-08-24 2017-09-12 128 Technology, Inc. Network packet flow controller with extended session management
US9871748B2 (en) 2015-12-09 2018-01-16 128 Technology, Inc. Router with optimized statistical functionality
US9985883B2 (en) 2016-02-26 2018-05-29 128 Technology, Inc. Name-based routing system and method
US10205651B2 (en) 2016-05-13 2019-02-12 128 Technology, Inc. Apparatus and method of selecting next hops for a session
US10298616B2 (en) 2016-05-26 2019-05-21 128 Technology, Inc. Apparatus and method of securing network communications
US10200264B2 (en) 2016-05-31 2019-02-05 128 Technology, Inc. Link status monitoring based on packet loss detection
US10091099B2 (en) 2016-05-31 2018-10-02 128 Technology, Inc. Session continuity in the presence of network address translation
US11075836B2 (en) 2016-05-31 2021-07-27 128 Technology, Inc. Reverse forwarding information base enforcement
US10257061B2 (en) 2016-05-31 2019-04-09 128 Technology, Inc. Detecting source network address translation in a communication system
US10841206B2 (en) 2016-05-31 2020-11-17 128 Technology, Inc. Flow modification including shared context
US9832072B1 (en) 2016-05-31 2017-11-28 128 Technology, Inc. Self-configuring computer network router
US10009282B2 (en) 2016-06-06 2018-06-26 128 Technology, Inc. Self-protecting computer network router with queue resource manager
US9985872B2 (en) 2016-10-03 2018-05-29 128 Technology, Inc. Router with bilateral TCP session monitoring
US10425511B2 (en) 2017-01-30 2019-09-24 128 Technology, Inc. Method and apparatus for managing routing disruptions in a computer network
WO2018165182A1 (en) 2017-03-07 2018-09-13 128 Technology, Inc. Router device using flow duplication
US10432519B2 (en) 2017-05-26 2019-10-01 128 Technology, Inc. Packet redirecting router
KR101983088B1 (ko) * 2017-06-23 2019-05-31 (주)넷비젼텔레콤 다중 경로 환경에서의 udp 패킷 처리 방법
US11165863B1 (en) 2017-08-04 2021-11-02 128 Technology, Inc. Network neighborhoods for establishing communication relationships between communication interfaces in an administrative domain
KR20200053620A (ko) * 2017-10-05 2020-05-18 지멘스 악티엔게젤샤프트 네트워크 및 통신 네트워크를 구성하기 위한 방법 및 장치
US20190253341A1 (en) 2018-02-15 2019-08-15 128 Technology, Inc. Service Related Routing Method and Apparatus
GB2575509A (en) * 2018-07-13 2020-01-15 Nokia Technologies Oy Spatial audio capture, transmission and reproduction
GB2575511A (en) 2018-07-13 2020-01-15 Nokia Technologies Oy Spatial audio Augmentation
WO2021217070A1 (en) 2020-04-23 2021-10-28 Juniper Networks, Inc. Session monitoring using metrics of session establishment
KR102502758B1 (ko) 2022-11-24 2023-02-23 펌킨네트웍스(주) 멀티코어 환경의 운영체제에 적합한 패킷 전송 장치

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH08223217A (ja) * 1995-02-08 1996-08-30 Nippon Telegr & Teleph Corp <Ntt> 無線パケット多重方法
JP2004088208A (ja) * 2002-08-23 2004-03-18 Sony Corp データ伝送システム及びデータ伝送方法
WO2005067261A1 (ja) * 2004-01-09 2005-07-21 Nec Corporation 通信方法

Family Cites Families (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH01101758A (ja) * 1987-10-15 1989-04-19 Oki Electric Ind Co Ltd 固定長パケット通信におけるパケット分解・組立および粉失検出方法
US6021433A (en) * 1996-01-26 2000-02-01 Wireless Internet, Inc. System and method for transmission of data
JP3587352B2 (ja) * 1999-02-04 2004-11-10 富士通株式会社 ネットワーク通信性能測定方法及び装置並びにネットワーク通信性能測定プログラムを格納したコンピュータ読取り可能な記録媒体
US20020031103A1 (en) * 2000-05-02 2002-03-14 Globalstar L.P. User terminal employing quality of service path determination and bandwidth saving mode for a satellite ISP system using non-geosynchronous orbit satellites
JP3816314B2 (ja) * 2000-07-11 2006-08-30 三菱電機株式会社 パケット交換装置
EP1175034A2 (en) * 2000-07-18 2002-01-23 Eastman Kodak Company A packet data transmission system with adaptive packet size
US20020073217A1 (en) * 2000-12-08 2002-06-13 Ma David Yin-Shur Method and apparatus for facilitating communication between a wireless device and disparate devices or systems
JP4187940B2 (ja) * 2001-03-06 2008-11-26 株式会社エヌ・ティ・ティ・ドコモ パケット伝送方法及びシステム、並びにパケット送信装置、受信装置、及び送受信装置
US20020131103A1 (en) * 2001-03-16 2002-09-19 Nicholas Bambos Method and system for reconfiguring a network element such as an optical network element
US7386000B2 (en) * 2001-04-17 2008-06-10 Nokia Corporation Packet mode speech communication
US8098648B2 (en) * 2004-01-09 2012-01-17 Nec Corporation Load distributing method
US7778179B2 (en) * 2005-11-23 2010-08-17 Telefonaktiebolaget L M Ericsson (Publ) Using filtering and active probing to evaluate a data transfer path

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH08223217A (ja) * 1995-02-08 1996-08-30 Nippon Telegr & Teleph Corp <Ntt> 無線パケット多重方法
JP2004088208A (ja) * 2002-08-23 2004-03-18 Sony Corp データ伝送システム及びデータ伝送方法
WO2005067261A1 (ja) * 2004-01-09 2005-07-21 Nec Corporation 通信方法

Non-Patent Citations (11)

* Cited by examiner, † Cited by third party
Title
DOVROLIS; RAMANATHAN; MOORE: "What Do Packet Dispersion Techniques Measure?", IEEE INFOCOM, 2001
KAKUZAWA ET AL.: "Implementation of Arbitration among Parallel TCP Streams in Long-interval/High-bandwidth Communication", SACSIS, 2004
L. S. BRAKMO; L. L. PETERSON: "TCP Vegas: End to End Congestion Avoidance on a Global Internet", IEEE JOURNAL OF SELECTED AREAS IN COMMUNICATIONS, vol. 13, no. 8, 1995, pages 1465
M. NAKAMURA ET AL.: "End-Node transmission rate control kind to intermediate routers", PFLDNET, 2004
MAKI ET AL.: "Performance Analysis and Evaluation of TCP Overlay Network", IEICE TECHNICAL REPORT, vol. IN04-96, 2004
NAKATA ET AL.: "The Internet in Moving Vehicles (2) -Flow Control Schemes", 2004 IEICE GENERAL CONFERENCE, 2004
OKANOUE ET AL.: "The Internet in Moving Vehicles (1) -Basic Concept and System Configuration", 2004 IEICE GENERAL CONFERENCE, 2004
ONO ET AL.: "The Internet in Moving Vehicles (3) -Retransmission Control Schemes", 2004 IEICE GENERAL CONFERENCE, 2004
PHILLIP MILLER: "Mastering TCP/IP", 1998, OHMSHA, LTD.
See also references of EP1981220A4
T. NAKATA ET AL.: "Efficient bundling of heterogeneous radio resources for broadband Internet access from moving vehicles", GLOBAL MOBILE CONGRESS 2004, 11 October 2004 (2004-10-11)

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2009253663A (ja) * 2008-04-07 2009-10-29 Mitsubishi Electric Corp モバイルルータアドホックネットワーク通信システム
WO2011040006A1 (ja) * 2009-09-30 2011-04-07 パナソニック株式会社 送信装置、受信装置、送受信システム、及び送受信方法
US8593985B2 (en) 2009-09-30 2013-11-26 Panasonic Corporation Transmitting apparatus, receiving apparatus, transmitting and receiving system, and transmitting and receiving method
JP2011160039A (ja) * 2010-01-29 2011-08-18 Brother Industries Ltd パケット送信装置、パケット送信方法及びパケット送信プログラム
US8514858B2 (en) 2010-01-29 2013-08-20 Brother Kogyo Kabushiki Kaisha Packet transmission device, packet transmission method and computer program product stored on non-transitory computer-readable medium

Also Published As

Publication number Publication date
EP1981220A4 (en) 2011-04-13
CN101379781A (zh) 2009-03-04
US20090059958A1 (en) 2009-03-05
KR20080079335A (ko) 2008-08-29
JP4780343B2 (ja) 2011-09-28
EP1981220A1 (en) 2008-10-15
JPWO2007083687A1 (ja) 2009-06-11

Similar Documents

Publication Publication Date Title
JP4780343B2 (ja) 通信方法、通信システム、ノードおよびプログラム
JP4394541B2 (ja) 通信装置、データ通信方法およびプログラム
EP1705845B1 (en) Load distributing method
EP2479941B1 (en) Communication apparatus and communication system for enhancing speed of communications between terminals
US11451481B2 (en) Network control apparatus and network control method
US6788686B1 (en) Method of maintaining packet order in multipath transmission systems having non-uniform traffic splitting
EP2195980B1 (en) Method, system and computer program product for adaptive congestion control on virtual lanes for data centre ethernet architecture
JP4547341B2 (ja) 通信品質制御機能を備えるパケット中継装置
US6072797A (en) Methods, apparatus and computer program products for aggregated transmission groups in high speed networks
JP4547339B2 (ja) 送信制御機能を備えるパケット中継装置
US20050185621A1 (en) Systems and methods for parallel communication
JP2008518552A (ja) 粗細試験期間を使用したネットワーク・パケットの経験的スケジューリング法
WO2002087276A2 (en) Method and device for robust real-time estimation of bottleneck bandwidth
CN107770085B (zh) 一种网络负载均衡方法、设备及系统
CN108540380A (zh) 多子流网络传输方法及装置
JP4488256B2 (ja) 通信方法、ノード及び制御プログラム
WO2005086436A1 (ja) パケット転送装置、パケット転送ネットワークシステム、および、端末装置
JP7151537B2 (ja) ネットワークコントローラ装置、ネットワーク制御システム、通信ネットワークの制御方法及びプログラム
JP2009105662A (ja) マルチホップ通信システム、マルチホップ通信方法、端末装置および中継装置
JP4505575B2 (ja) 通信システム、ゲートウェイ送信装置、ゲートウェイ受信装置、送信方法、受信方法および情報記録媒体
US7088738B1 (en) Dynamic fragmentation of information
Jacquet et al. Striping over wireless links: effects on transmission delays
Jacquet et al. A method for increasing throughput based on packet striping
JP2000236352A (ja) データ転送システム及びその時間演算方法並びにその制御プログラムを記録した記録媒体
CN115733755A (zh) 一种可填充网络带宽的数据中心传输控制系统及方法

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application
DPE1 Request for preliminary examination filed after expiration of 19th month from priority date (pct application filed from 20040101)
WWE Wipo information: entry into national phase

Ref document number: 2007554937

Country of ref document: JP

WWE Wipo information: entry into national phase

Ref document number: 200780002898.4

Country of ref document: CN

Ref document number: 12161922

Country of ref document: US

Ref document number: 1020087018142

Country of ref document: KR

Ref document number: 2007706964

Country of ref document: EP

NENP Non-entry into the national phase

Ref country code: DE

DPE1 Request for preliminary examination filed after expiration of 19th month from priority date (pct application filed from 20040101)