WO2004093395A1 - 順序番号に従って受信パケットを送信する経路制御装置 - Google Patents

順序番号に従って受信パケットを送信する経路制御装置 Download PDF

Info

Publication number
WO2004093395A1
WO2004093395A1 PCT/JP2003/004729 JP0304729W WO2004093395A1 WO 2004093395 A1 WO2004093395 A1 WO 2004093395A1 JP 0304729 W JP0304729 W JP 0304729W WO 2004093395 A1 WO2004093395 A1 WO 2004093395A1
Authority
WO
WIPO (PCT)
Prior art keywords
packet
sequence number
bucket
received
queue
Prior art date
Application number
PCT/JP2003/004729
Other languages
English (en)
French (fr)
Inventor
Eiji Hasegawa
Toru Kamiwada
Fumio Honda
Original Assignee
Fujitsu Limited
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 Fujitsu Limited filed Critical Fujitsu Limited
Priority to PCT/JP2003/004729 priority Critical patent/WO2004093395A1/ja
Priority to JP2004570865A priority patent/JPWO2004093395A1/ja
Publication of WO2004093395A1 publication Critical patent/WO2004093395A1/ja

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • H04L47/34Flow control; Congestion control ensuring sequence integrity, e.g. using sequence numbers
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L49/00Packet switching elements
    • H04L49/55Prevention, detection or correction of errors
    • H04L49/552Prevention, detection or correction of errors by ensuring the integrity of packets received through redundant connections

Definitions

  • Route control device for transmitting a reception bucket according to a sequence number
  • the present invention relates to a route control device (router) in a network capable of transmitting a series of buckets via a plurality of routes, and more particularly to routing according to a sequence number of a received packet.
  • route control device router
  • buckets may be copied out of order in a route control device located in the middle of the network.
  • the order of the received packets will be disturbed in all subsequent route control devices and receivers that receive a series of packets via the route control device. Therefore, when the order of reception of a series of packets is important, the transmitter must describe the sequence number in the transmitted packet, and the receiver must correct the loss and disorder of the sequence number and reconstruct the data.
  • Japanese Patent Application Laid-Open No. 5-252186 (A) published by Taisho on September 28, 1993 describes a cell order matching method of an ATM switch. This method adds a time stamp to input cells in an ATM switch, and corrects the cell order inversion that occurs when distributed routing is performed in the switch according to the time stamp added in the buffer.
  • the inventors have determined the order of the received packets in the route control device in the network. It was recognized that it would be efficient to make corrections and reduce the processing load for corrections on the receiver side. In addition, the inventors have recognized that it is efficient to correct the transmission jitter of the received packet in the route control device in the network to reduce the processing load for jitter correction on the receiver side.
  • Another object of the present invention is to correct the transmission bucket of a reception bucket in a route control device.
  • a processor of a route control device connectable to a network receives a series of buckets having a sequence number addressed to a predetermined receiver from a predetermined transmitter and queued.
  • the packet is temporarily stored for each destination, and the stored packet is transmitted according to the sequence number, regardless of the order of the received buckets for each stored destination.
  • the present invention further relates to a program for the above route control device.
  • FIG. 1 shows a configuration of a route control device according to an embodiment of the present invention.
  • FIG. 2 shows a flowchart for processing a new received packet, which is executed by the packet analysis unit.
  • FIG. 3A shows the configuration of the packet management unit.
  • FIG. 3B shows a bucket management queue in the bucket management unit in FIG. 3A.
  • FIG. 3C shows the configuration of bucket management data in the bucket management queue in FIG. 3B.
  • Figure 4 illustrates the processing of a new incoming packet, performed by the packet manager FIG.
  • FIG. 5A shows an example of a condition of a reception bucket in which the transmission order is corrected.
  • FIG. 5B serves to illustrate the identification and distribution of received buckets by the bucket manager.
  • FIGS. 6A and 6B show examples of packet management queues in the bucket management unit.
  • FIG. 7 shows a flowchart for transmitting a packet stored in the packet management queue, which is executed by the packet management unit.
  • FIGS. 8A and 8B show examples of buckets in the packet management queue in the bucket management unit.
  • Figures 9A and 9B show which of the routing devices in the network will have the function of transmission order correction and which program receiver will receive the packet transmission order according to the request from the program receiver. It shows various ways to automatically determine
  • FIG. 10 is useful for explaining a method of correcting transmission jitter in the route control device.
  • FIG. 1 shows a configuration of a path control device 100 according to an embodiment of the present invention.
  • the route control device 100 is connected to one or more networks 52 to 58.
  • the route control device 102 may be connected to a transmitter 40 such as a program broadcast device for multicasting.
  • the transmitter 40 may have a receiving function.
  • the path control device 104 may be connected to a receiver 60 such as a receiving device for multicast.
  • the receiver 60 may have a transmission function.
  • the route control devices 102 and 104 have the same configuration as the route control device 100.
  • the path control device 100 includes a bucket order management unit 120 and network interfaces 132 to 142 connected to the networks 52 to 58 and the like, respectively.
  • the route control device 100 may be connected to the transmitter 40 or the receiver 60.
  • the packet order management unit 120 includes a packet analysis unit 122 and a packet management unit 124.
  • the bucket analysis unit 1 2 2 and the packet management unit 1 2 4 The functions may be implemented by the processor 126 according to the programs stored in the program memory 128.
  • the network interface 132 to 142 supplies the received packet to the bucket order management unit 120.
  • the bucket analysis unit 122 of the packet order management unit 120 analyzes the packet by adding the reception time to the received packet, and determines whether or not the packet is subject to the correction of the order.
  • FIG. 2 shows a flowchart for processing a new received packet, which is executed by the packet analysis unit 122.
  • step 202 when a new received bucket is received, the bucket analyzing unit 122 determines attributes such as a destination address, a destination port, and a sequence number of the bucket.
  • step 204 the packet analysis unit 12 determines whether or not the bucket is an order correction target according to the attribute of the packet. When it is determined that the bucket is not the object, the bucket analysis unit 12 transmits the bucket to the corresponding network, for example, the network 58 in step 210.
  • the packet analysis unit 122 analyzes the sequence number of the packet.
  • the bucket analysis unit 122 extracts the time stamp and the sequence number in the received bucket and passes them to the bucket management unit 124 together with the received packet.
  • the bucket management unit 124 transmits the bucket to the corresponding network, for example, the network 58, according to the sequence number, in the form described below.
  • FIG. 3A shows a configuration of the packet management unit 124.
  • FIG. 3B shows a configuration of a packet management queue 320 representing the bucket management queues 302, 304 and 306 in the packet management unit 124 of FIG. 3A.
  • FIG. 3C shows the configuration of the packet management data 350 representing the packet management data 342 to 348 in the packet management queue 320 of FIG. 3B.
  • the packet management unit 124 dynamically generates bucket management queues 302 to 310 associated with each of the destination addresses A to C and the destination port. Hold.
  • the packet management queue 320 includes an area of a packet management queue attribute 330 and a management data queue 340.
  • the attribute of the packet management queue, 330 is the destination address of the packet in the queue, 33, the destination port representing the receiving port of the receiver, and the sequence number of the last transmitted packet in the queue. Includes the fields of 3 6 and the time of receipt 3 3 8 of the oldest bucket in the queue.
  • Destination address 332 may be an individual destination address or a destination address for multicast or broadcast.
  • the management data queue 340 contains management data 342 to 348 that have been received but not transmitted.
  • the packet management data 350 includes bucket data 352, reception time 354, and bucket sequence number 356.
  • Bucket Day 352 contains a timestamp added by the transmitter 40.
  • FIG. 4 shows a flowchart for processing a new received bucket, which is executed by the bucket management unit 124. .
  • step 402 the bucket management unit 124 determines which of the already generated bucket management queues 302 to 306 for each destination address and destination port corresponds to the attribute of the new received bucket. Determine if it exists. If it is determined that the corresponding queue does not exist, in step 404, the bucket management unit 124 generates a corresponding packet management queue, and in step 406, stores the new bucket in the generated queue. Store.
  • step 414 the bucket management unit 124 transmits the sequence number of the new received bucket last (previous). It is determined whether the packet is smaller than the received packet, that is, whether the packet is old. If it is determined that it is older than the last packet transmitted, in step 430, the packet manager 124 discards the new packet.
  • step 416 the packet manager 124 determines whether the corresponding bucket management queue is empty. If it is determined that it is empty, in step 406 the packet manager 124 stores the new packet in the management queue. If it is determined that the received packet is not empty, in step 418, the bucket management unit 124 checks whether a received bucket having the same sequence number as the new received packet exists in the corresponding bucket management queue. judge. If it is determined that a received packet with the same sequence number exists, the procedure proceeds to step 430.
  • step 420 the packet management unit 124 stores the new received packet at an appropriate position in the corresponding bucket management queue, and Then, the order of the buckets in the queue is corrected. '
  • FIG. 5A shows an example of a condition of a received packet to be corrected for the transmission order.
  • the example of the condition of the packet whose transmission order is corrected 51 is that the value of the first 16 bits of the source IPV 6 address corresponds to "fec 0", and the communication protocol is TCP. There is something.
  • Another example of the condition 52 is that the value of the string of the first 16 bits of the source IPv6 address corresponds to "3ffe".
  • Yet another example 53 of that condition is that the communication protocol is RTP.
  • the analysis unit 122 determines whether the new received bucket matches any of these conditions 51 to 53 (FIG. 2, steps 202 to 204). When it is determined that the packet matches one of the conditions, the analyzing unit 122 transfers the bucket to the bucket managing unit 124 for correcting the transmission order.
  • FIG. 5B is useful for explaining the identification and distribution of the received bucket by the bucket management unit 124.
  • the analyzer 122 displays the packets 501 to 505 in FIG. 5A. It is determined whether or not the conditions 5 1 to 5 3 are matched.
  • Packet 501 has the source address's leading 16-bit value "fec0" and its protocol is TCP, so the packet matches condition 51.
  • Packet 502 has the first 16 bits value of the source address, "fec 0", but the protocol is FTP, so the packet does not match any of the conditions.
  • Bucket 503 has the leading 16-bit value "3 ffe" of the source address, so the packet matches condition 52.
  • the bucket 504 has a 16-bit value "3ffe” at the head of the source address, but its protocol is UDP and the sequence number is , So the packet does not match any of the conditions.
  • Bucket 505 indicates that the protocol is RTP, so the packet matches condition 53.
  • Packets matching any of the conditions 51 to 53 are passed to the bucket management unit 124 together with the sequence number and reception time data for transmission order correction, and stored in the corresponding packet management queue. .
  • a bucket that does not match any of the conditions 51 to 53 is transmitted to the corresponding network 52 to 58.
  • FIGS. 6A and 6B show examples of the packet management queue in the packet management section 124.
  • the bucket passed to the bucket management unit 124 by the bucket analysis unit 122 is managed in the form of a queue by the bucket management unit 124.
  • the bucket management unit 124 generates and holds a bucket management queue for each destination address and destination port.
  • the bucket management unit 124 has a bucket management queue 101 for the destination address 102 and the destination port 103, and a bucket management queue 101 for the destination address 202 and the destination port 203. Assume that the bucket management queue 201 already exists. When the bucket management unit 124 receives a new received packet 310 from the bucket analysis unit 122, the bucket management queue corresponding to the destination address 302 and the destination port 303 of the bucket exists. Check if.
  • the packet management unit 1 24 creates a new packet management bucket management queue 301 corresponding to the destination address 302 and the destination port 303, and stores the reception bucket 310 there.
  • the packet management unit 124 has a packet management queue 101 for the destination address 102 and the destination port 103, and a destination address 202 and a destination port 203. It is assumed that there is already a bucket management queue 201 for the destination and a bucket management queue 301 for the destination address 302 and the destination port 303.
  • the bucket management unit 124 Upon receiving the new received packet 113 from the bucket analysis unit 122, the bucket management unit 124, when receiving the bucket's destination address 102 and destination port 103, Check if there is a bucket management queue corresponding to.
  • the bucket management unit 124 stores the reception bucket 113 in the bucket management queue 101 corresponding to the destination address 102 and the destination port 103 according to the sequence number SN. For this purpose, the bucket management unit 124 sequentially compares the sequence number of the packet 113 with the sequence numbers of the packets 111, 111 and 112 in the queue 101. This sequence number 1 0 0 is greater than the bucket 1 1 1 sequence number 1 0 0 1 and smaller than the packet 1 1 2 sequence number 1 0 3, so the packet 1 1 3 is in queue 1 0 1 Packets between 1 1 1 and 1 1 2 are inserted.
  • the packet manager 124 discards the received packet.
  • the bucket order is corrected when storing a new received packet, but the received bucket is stored in the receiving order without correcting the order, and the bucket order is corrected when transmitting. Is also good.
  • FIG. 7 shows a flowchart for transmitting the packet stored in the packet management unit 320 of FIG. 3B, which is executed by the packet management unit 124.
  • the packet management is performed.
  • the unit 124 determines whether or not the sequence number of the packet at the head of the bucket management queue 320 is next to the sequence number of the last (previous) transmitted packet. If it is determined that the sequence number is next to the sequence number of the last transmitted packet, in step 704, the packet management unit 124 transmits the packet at the head of the packet. I do. Thereafter, the procedure returns to step 720.
  • a series of buckets having a sequence number following the sequence number of the last transmitted packet in the queue is sent until the sequence number breaks continuity or the packet management queue is empty.
  • the packet management unit 124 checks the reception time in the bucket management queue. Difference between the received time of the old (early) packet and the current time Is calculated. In step 716, the packet management unit 124 determines whether the difference is longer than a predetermined buffering time or waiting time in the packet management queue. If it is determined that the difference is greater than the predetermined buffering time in the bucket management queue, in step 718, the packet management unit 124 returns to the first sequence number regardless of the continuity of the packet sequence numbers. The packets from the smallest packet of the packet to the bucket of the oldest reception time are sequentially transmitted. Thereafter, the procedure exits the routine of FIG. 7, and if the difference is determined to be greater than the predetermined buffering time, the procedure exits the 'routine' of FIG.
  • FIGS. 8A and 8B show examples of packets in the packet management queue in the packet management section 124.
  • the packet management section 124 sequentially sends the first and subsequent buckets 401 and 402. The next bucket 4003 is not sent at this time because its sequence number 4004 is not continuous with the sequence number 4002 of the last bucket 4002 sent.
  • buckets 410 to 414 are stored in the packet management queue 101, and that the packet 409 has not been received yet.
  • the reception time of the first packet 410 is 10: 00: 00: 500: 500, and packets 411 to 414 are stored in ascending order of the sequence number following the bucket 410.
  • the predetermined buffering or waiting time in the packet management queue is 300 ms, and the time 10: 00: 00: 00: 600 has elapsed at the present time. Therefore, the management unit 124 sequentially transmits packets from the first packet 410 to the oldest packet 413 according to the flowchart of FIG.
  • the next bucket 404 is not transmitted at this stage unless its sequence number is a number that is consecutive to the sequence number of packet 413.
  • the route control device must forward the packet as soon as possible. In other words, it is desirable that the time to hold a bucket in the packet management queue be as short as possible. . Therefore, instead of simply determining the packet buffering time by the setting of the route control device, the time for holding the bucket in the buffer may be dynamically determined based on the actual reception state of the packet. In order to determine the holding time, the route control device determines from the reception time and sequence number of each packet how long the reception time between adjacent packets arranged according to the sequence number in the queue is. Calculates whether packets were received at intervals, and extracts packets received at the maximum time interval in a different order from the sequence number. For example, in the example of the reception state as shown in Fig.
  • the time interval between buckets 4 12 and 4 13 received at a large time interval in a different order from the sequence number is 1 240 ms. It is. Such calculations are performed periodically, and the maximum time that a packet is held in the bucket management queue is dynamically changed based on the maximum time interval.
  • the holding time may be a value obtained by adding a certain time to the maximum time interval or multiplying a certain coefficient in order to provide a margin.
  • FIGS. 9A and 9B show which of the route control devices 912 to 920 in the network has the function of correcting the transmission order according to the request from the receiver 924, and It shows how to automatically determine which receivers 942 to correct the bucket order.
  • FIGS. 9A and 9B an example will be described in which the receiver requests and transmits a program from the transmitter to the transmitter. Any content and information is not limited to such a program.
  • the receiver 942 sends a series of buckets representing a program to the transmitter 92 over the network in response to a user request or an application running on the receiver 942.
  • This request packet is sent to the first route control device that has received this packet, the function to correct the bucket order and the conditions for that.
  • an instruction to set This request packet is transmitted, for example, via the routes 954, 956, 9558 and 9660 and the route control devices 920, 918, 916 and 912 to the transmitter 9 0 Sent to 2.
  • the route control device 920 that first and directly receives the request packet from the receiver 942 is arranged in the order of a series of buckets of the program transmitted from the transmitter 902 to the receiver 924. It is set to execute the control to correct.
  • the path control device 920 deletes the command in the request packet, and transmits the request packet requesting program transmission without the command to the next path control device 916.
  • the route control device 920 corrects the order of the packet when receiving a packet addressed to the receiver 924 from the transmitter 902 and transmitting the packet directly to the receiver 924. Control to perform.
  • the receiver 942 sends a series of programs representing a program to the program transmitter 92 via a network according to a user's request or an application running on the receiver 942. Send a packet that requests transmission of the packet and requests that the order of the packets be corrected.
  • the request packet is transmitted from the receiver 942 to the transmitter 902 in the form illustrated in FIG. 9A.
  • the transmitter 902 transmits a response or return packet to the receiver 942 in response to receiving the request packet.
  • the response packet consists of all possible routes 962, 966, 966, 966 and 970, and the route control devices 912, 916, 918 and 9 Transmitted from the transmitter 90 2 to the receiver 9 42 via 20.
  • the response packet includes an instruction to cause the path control device, which has received the same response bucket a plurality of times or from a plurality of paths, to set a function for correcting the order of the bucket and a condition therefor.
  • the route control device 918 which has received the same response bucket multiple times or from multiple routes, transmits the sequence of a series of packets of the program transmitted from the program transmitter 902 to the program receiver 942. It is set to execute the control to correct.
  • the path control device 918 discards the second response packet. Thereby, it is possible to set so as to correct the bucket order only in a route control device that may receive a packet from the transmitter 902 via a plurality of routes.
  • the path control device may not only correct the transmission order but also correct the transmission jitter by adjusting the transmission interval based on the timestamp. .
  • the management unit 124 needs to hold a time stamp as packet management data.
  • the management unit 124 calculates, for each packet management queue, at which time the next packet is to be transmitted from the difference between the reception time and the time stamp. At the time of the calculation, the management unit 124 corrects the packet inserted between the received packets in the bucket management queue according to the sequence number, i.e., the packet inserted late, that is, the packet received late and the packet having the subsequent sequence number. Calculate the difference between the reception times between The management unit 124 determines the transmission time of the bucket in the bucket management queue based on the inserted packet having the largest difference.
  • FIG. 10 is useful for explaining a method of correcting transmission jitter in the path control device.
  • packets 501, 503, and 504 are received sequentially, followed by bucket 502. It is assumed that the reception time of the bucket 502 is delayed by 180 ms from the reception time of the packet 503 having the subsequent sequence number. The difference between the reception time of this bucket 502 and the reception time of the subsequent bucket 503 is the largest. Therefore, based on the packet 502, the transmission time of the packets 501 to 504 in the packet management queue is determined.
  • the receipt time and time stamp of the bucket 502 are 10020 and 10: 00: 500, respectively, and the difference between the packet 503 and the delay of 180 ms is only 20 ms compared to the 200 ms latency of the bucket management queue. Afford. Accordingly, 10: 00: 00: 520 obtained by adding the margin time of 20 ms to the bucket of the time stamp 10020 to the reception time is determined as the transmission time.
  • the other buckets 501, 503 and 504 determine the respective sending times based on the difference between the respective time stamps and the time stamp of the reference bucket 502.
  • the time stamp of the packet 501 is 10000, which is 20 ms smaller than the time stamp 1002 0 of the reference packet 502, so the transmission time of the packet 502 is 10: 00: 00: 500, which is 20 ms earlier than 10: 00: 00: 520.

Landscapes

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

Abstract

 ネットワーク(52、54、56および58)に接続可能な経路制御装置(100)は、所定の送信機(40)から所定の受信機(60)に宛てられていて順序番号を有する一連のパケットを受信してキュー(124)に宛先毎に一時的に格納し、その格納された宛先毎のパケットの受信の順序に関係なく、その順序番号に従ってその格納されたパケットを送信する。

Description

明 細 書 順序番号に従って受信バケツトを送信する経路制御装置 発明の属する技術分野
本発明は、 複数の経路を介して一連のバケツトを伝送し得るネットワークにお ける経路制御装置 (ルータ) に関し、 特に受信パケットの順序番号に従ったルー ティングに関する。
発明の背景 '
ネットワークにおいて複数の経路を介して一連のパケットが伝送されるとき、 送信側ェンドから送られたバケツトの受信順序が受信側ェンドにおいて乱れるこ とが、ある。
例えば、 一連のバケツトをマルチキャスト伝送すると、 ネットワークの中間に ある経路制御装置において乱れた受信順序でバケツトがコピーされることがある 。 それによつて、 その経路制御装置を介して一連のパケッ卜を受信する全ての次 の経路制御装置および受信機において受信パケットの順序が乱れることになる。 よって、 一連のパケットの受信順序が重要な場合は、 送信機が送信パケットに 順序番号を記述し、 受信機がその順序番号の脱落および乱れを補正してデータを 再構成する必要がある。
一方、 ネットワークにおいて一連のパケッ卜が 1つの経路だけを介して順次伝 送され、 受信機において伝送されたバケツトの受信順序が乱れることのないよう なネットワークを構築することが研究および開発されている。
しかし、 ネットワーク資源を最大限に利用するためには、 複数の経路を介して 一連のパケットが伝送されることを許容したほうがよい。
大照によって平成 5年 9月 2 8日付けで公開された特開平 5— 2 5 2 1 8 6号 公報 (A) には、 ATMスィッチのセル順序整合方式が記載されている。 この方 式は、 ATMスィッチ内において、 入力セルにタイムスタンプを付加し、 スイツ チ内で分散ルーティングを行つたときに生じるセル順序の逆転を、 ·バッファにお いて付加されたタイムスタンプに従って補正する。
発明者たちは、 ネットワーク中の経路制御装置において受信パケッ卜の順序を 補正して受信機側で補正のための処理負荷を低減すると効率的であると認識した 。 また、 発明者たちは、 ネットワーク中の経路制御装置において受信パケットの 伝送ジッ夕を補正して、 受信機側でのジッタ補正のための処理負荷を低減すると 効率的であると認識した。
本発明の目的は、 経路制御装置において受信バケツトの順序を補正することで ある。
本発明の別の目的は、 経路制御装置において受信バケツトの伝送ジッ夕を補正 することである。 '
発明の概要
本発明の 1つの特徵によれば、 ネットワークに接続可能な経路制御装置のプロ セッサは、 所定の送信機から所定の受信機に宛てられていて順序番号を有する一 連のバケツトを受信してキューに宛先毎に一時的に格納し、 その格納された宛先 毎のバケツトの受信の順序に関係なく、 その順序番号に従ってその格納されたパ ケットを送信する。
本発明は、 さらに、 上述の経路制御装置用のプログラムに関する。
本発明によれば、 経路制御装置において受信バケツトの順序を補正することが でき、 それによつて受信機の順序補正の負荷を低減することができ、 また、 受信 パケットの伝送ジッ夕を補正することができる。
図面において同じ要素には同じ参照番号が付されている。
図面の簡単な説明
図 1は、 本発明の実施形態による経路制御装置の構成を示している。
図 2は、 パケット解析部によって実行される、 新しい受信パケットを処理する ためのフローチャートを示している。
図 3 Aは、 パケット管理部の構成を示している。
図 3 Bは、 図 3 Aにおけるバケツト管理部中のバケツト管理キューを示してい る。
図 3 Cは、 図 3 Bにおけるバケツト管理キュー中のバケツト管理データの構成 を示している。
図 4は、 パケット管理部によって実行される、 新しい受信パケットを処理する ためのフローチャートを示している。
図 5 Aは、 送信順序が補正される受信バケツ卜の条件の例を示している。 図 5 Bは、 バケツト管理部による受信バケツトの識別および振り分けを説明す るのに役立つ。
図 6 Aおよび 6 Bは、 バケツト管理部におけるパケット管理キューの例を示し ている。
図 7は、 パケット管理部によって実行される、 パケット管理キューに格納され たバケツ卜を送出するためのフローチャートを示しそいる。
図 8 Aおよび 8 Bは、 バケツト管理部におけるパケット管理キュー中のバケツ トの例を示している。
図 9 Aおよび 9 Bは、 プログラム受信機からの要求に従って、 ネットワーク中 の経路制御装置のどれに送信順序補正の機能を持たせるか、 およびどのプロダラ ム受信機へのバケツトの送信順序を補正するかを自動的に決定する様々な方法を 示している。
図 1 0は、 経路制御装置において伝送ジッ夕を補正する方法を説明するのに役 立つ。
好ましい実施形態の説明
図 1は、 本発明の実施形態による経路制御装置 1 0 0の構成を示している。 経 路制御装置 1 0 0は 1つまたは複数のネットワーク 5 2〜 5 8に接続されている 。 経路制御装置 1 0 2は、 例えばマルチキャスト用のプログラム放送装置のよう な送信機 4 0に接続されていてもよい。 送信機 4 0は受信機能を持っていてもよ い。 経路制御装置 1 0 4は、 マルチキャスト用の受信装置のような受信機 6 0に 接続されていてもよい。 受信機 6 0は送信機能を持っていてもよい。 経路制御装 置 1 0 2および 1 0 4は経路制御装置 1 0 0と同様の構成を有する。
経路制御装置 1 0 0は、 バケツト順序管理部 1 2 0と、 ネットワーク 5 2〜 5 8等にそれぞれ接続されたネットワーク ·インタフェース 1 3 2〜1 4 2とを含 んでいる。 経路制御装置 1 0 0は送信機 4 0または受信機 6 0に接続されていて もよい。 パケット順序管理部 1 2 0は、 パケット解析部 1 2 2およびパケット管 理部 1 2 4を含んでいる。 バケツト解析部 1 2 2およびパケット管理部 1 2 4の 機能は、 プログラム ·メモリ 1 2 8に格納されたプログラムに従ってプロセッサ 1 2 6によって実装 (インプレメント) されてもよい。
ネットワーク 'インタフエ一ス 1 3 2〜1 4 2は、 受信したパケットをバケツ ト順序管理部 1 2 0に供給する。 パケット順序管理部 1 2 0のバケツト解析部 1 2 2は、 受信したパケットに受信時刻を付加してそのパケットを解析し、 そのパ ケットがその順序の補正の対象 あるかどうかを判定する。
図 2は、 パケット解析部 1 2 2によって実行される、 新しい受信パケットを処 理するた ¾のフローチャートを示している。 '
ステップ 2 0 2において、 バケツト解析部 1 2 2は、 新しい受信バケツトを受 信したときそのバケツ卜の宛先アドレス、 宛先ポートおよび順序番号等の属性を 判定する。 ステップ 2 0 4において、 パケット解析部 1 2は、 そのパケットの属 性に従ってそのバケツトが順序補正対象であるかどうかを判定する。 そのバケツ トがその対象でないと判定されたとき、 ステップ 2 1 0において バケツト解析 部 1 2は、 対応するネットワーク、 例えばネットワーク 5 8にバケツ卜を送信す る。
そのパケットがその対象であると判定されたとき、 ステップ 2 0 6において、 パケット解析部 1 2 2はパケットの順序番号を解析する。 ステップ 2 0 8におい て、 バケツト解析部 1 2 2は、 受信バケツト中のタイムスタンプおよび順序番号 を取り出してそれを受信パケットとともにバケツト管理部 1 2 4に渡す。 バケツ ト管理部 1 2 4は、 以下で説明するような形態で、 順序番号に従って、 対応する ネットワーク、 例えばネットヮ一ク 5 8にそのバケツトを送信する。
図 3 Aは、 パケット管理部 1 2 4の構成を示している。 図 3 Bは、 図 3 Aのパ ケット管理部 1 2 4中のバケツト管理キュー 3 0 2 , 3 0 4および 3 0 6を表す パケット管理キュー 3 2 0の構成を示している。 図 3 Cは、 図 3 Bのパケット管 理キュー 3 2 0中のパケット管理データ 3 4 2〜 3 4 8を表すパケット管理デー タ 3 5 0の構成を示している。
図 3 Aに示されているように、 パケット管理部 1 2 4は、 各宛先アドレス A〜 Cおよび宛先ポートに対応付けられたバケツト管理キュー 3 0 2〜 3 0 6を動的 に生成して保持する。 図 3 Bに示されているように、 パケット管理キュー 3 2 0は、 パケット管理キ ユーの属性 3 3 0と管理データ ·キュ一 3 4 0の領域を含んでいる。 パケット管 理キューの属性 3 3 0は、 そのキューにおけるパケットの宛先アドレス 3 3 2、 受信機 6 0の受信ポートを表す宛先ポート 3 3 4、 そのキュ一における最後の送 出パケットの順序番号 3 3 6およびそのキューにおける最も古いバケツトの受信 時刻 3 3 8のフィールドを含んでいる。 宛先アドレス 3 3 2は、 個々の宛先アド レスであってもまたはマルチキャストまたはプロ一ドキャスト (同報通信) 用の 宛先アドレスであってもよい。 管理データ 'キュー 3 4 0は、 受信しも未送信の 管理データ 3 4 2〜 3 4 8を含んでいる。
図 3 Cを参照すると、 パケット管理データ 3 5 0は、 バケツト ·データ 3 5 2 、 受信時刻 3 5 4およびバケツト順序番号 3 5 6を含んでいる。 バケツト ·デー 夕 3 5 2は、 送信機 4 0によって付加されたタイムスタンプを含んでいる。 図 4は、 バケツト管理部 1 2 4によって実行される、 新しい受信バケツトを処 理するためのフローチャートを示している。 .
ステップ 4 0 2において、 バケツト管理部 1 2 4は、 それぞれの宛先ァドレス および宛先ポートに対する既に生成されたバケツト管理キュー 3 0 2〜 3 0 6の 中にその新しい受信バケツトの属性に対応するものが存在するかどうかを判定す る。 対応するキューが存在しないと判定されたときは、 ステップ 4 0 4において 、 バケツト管理部 1 2 4は対応するパケット管理キューを生成し、 ステップ 4 0 6においてその生成されたキューにその新しいバケツトを格納する。
ステップ 4 0 2において対応するキュ一が存在すると判定されたときは、 ステ ツプ 4 1 4において、 バケツト管理部 1 2 4は、 そ'の新しい受信バケツトの順序 番号が最後に (前回) 送出したパケットより小さいか、 即ち古いかどうかを判定 する。 それが最後に送出したパケットより古いと判定された場合は、 ステップ 4 3 0において、 パケット管理部 1 2 4はその新しいパケットを破棄する。
それが最後に送出したバケツ卜より古くないと判定された場合は、 ステップ 4 1 6において、 パケット管理部 1 2 4は対応するバケツト管理キューが空かどう かを判定する。 それが空であると判定された場合は、 ステップ 4 0 6において、 パケット管理部 1 2 4は管理キューにその新しいパケットを格納する。 それが空でないと判定された場合は、 ステップ 4 1 8において、 バケツト管理 部 1 2 4は、 対応するバケツト管理キューの中にその新しい受信パケットと同じ 順序番号の受信バケツトが存在するかどうかを判定する。 同じ順序番号の受信パ ケットが存在すると判定された場合は、 手順はステップ 4 3 0に進む。
同じ順序番号の受信パケットが存在しないと判定された場合は、 ステップ 4 2 0において、 パケット管理部 1 2 4はその新しい受信パケットを対応するバケツ ト管理キューの適正な位置に格納し、 それによつてそのキューにおけるバケツト の順序を補正する。 '
図 5 Aは、 送信順序の補正の対象となる受信パケットの条件の例を示している 。 図 5 Aにおいて、 送信順序が補正されるパケットの条件の例 5 1は、 発信元 I P V 6アドレスの先頭 1 6ビットのストリングの値が " f e c 0 " に対応し、 か つ通信プロトコルが T C Pであることである。 その条件の別の例 5 2は、 送信元 I P V 6アドレスの先頭 1 6ピッ卜のストリングの値が " 3 f f e " に対応する ことである。 その条件のさらに別の例 5 3は、 通信プロトコルが R T Pであるこ とである。 解析部 1 2 2は、 新しい受信バケツトがこれらの条件 5 1〜5 3のい ずれかにマッチ (合致) するかどうかを判定する (図 2、 ステップ 2 0 2〜2 0 4 ) 。 それがいずれかの条件にマッチしていると判定されたとき 解析部 1 2 2 はそのバケツトを送信順序補正のためにバケツト管理部 1 2 4に渡す。
図 5 Bは、 バケツト管理部 1 2 4による受信バケツ卜の識別および振り分けを 説明するのに役立つ。 図 5 Bにおいて、 新しい受信バケツト 5 0 1〜 5 0 5が解 析部 1 2 2に供給されたとき、 解析部 1 2 2は、 パケッ卜 5 0 1〜5 0 5が図 5 Aに示された条件 5 1〜5 3にマッチするかどうかを判定する。 パケット 5 0 1 は、 発信元ァドレスの先頭 1 6ビット値 " f e c 0 " を有し、 そのプロトコルが T C Pであり、 従ってそのパケットは条件 5 1にマッチする。 パケット 5 0 2は 、 発信元ァドレスの先頭 1 6ビット値 " f e c 0 " を有するが、 そのプロトコル が F T Pであり、 従ってそのパケットはいずれの条件にもマッチしない。 バケツ ト 5 0 3は、 発信元アドレスの先頭 1 6ビット値 " 3 f f e " を有し、 従ってそ のパケットは条件 5 2にマッチする。 バケツト 5 0 4は、 発信元アドレスの先頭 1 6ビット値 " 3 f f e " を有するが、 そのプロトコルが UD Pであり順序番号 を持っておらず、 従ってそのパケットはいずれの条件にもマッチしない。 バケツ ト 5 0 5は、 そのプロトコルが R T Pであり、 従ってそのパケットは条件 5 3に マッチする。
条件 5 1〜5 3のいずれかにマッチしたパケットは、 送信順序補正のために順 序番号および受信時刻のデータとともにバケツト管理部 1 2 4に渡されて、 対応 するパケット管理キューに格納される。 一方、 条件 5 1〜5 3のいずれにもマツ チしなかったバケツトは、 対応するネットワーク 5 2 ~ 5 8に送信される。 図 6 Aおよび 6 Bは、 パケット管 部 1 2 4におけるパケット管理キューの例 を示している。 バケツト解析部 1 2 2によってバケツト管理部 1 2 4に渡された バケツトは、 バケツト管理部 1 2 4によってキューの形態で管理される。 バケツ ト管理部 1 2 4は、 宛先アドレスおよび宛先ポートごとのバケツト管理キューを 生成して保持する。
図 6 Aを参照すると、 バケツト管理部 1 2 4には、 宛先ァドレス 1 0 2および 宛先ポート 1 0 3用のバケツト管理キュー 1 0 1と、 宛先アドレス 2 0 2および 宛先ポート 2 0 3用のバケツト管理キュー 2 0 1とが既に存在するものと彼定す る。 バケツト管理部 1 2 4は、 バケツト解析部 1 2 2から新しい受信パケット 3 1 0を受け取ると、 そのバケツ卜の宛先ァドレス 3 0 2および宛先ポート 3 0 3 に対応するバケツト管理キューが存在するかどうかをチェックする。 現在のパケ ッ卜管理キュー 1 0 1および 2 0 1の中に受信バケツト 3 1 0の宛先ァドレス 3 0 2および宛先ポート 3 0 3に対応するキュ一が存在しないときは、 パケット管 理部 1 2 4は、 宛先ァドレス 3 0 2および宛先ポート 3 0 3に対応する新しいパ ケット管理バケツ卜管理キュー 3 0 1を作成して、 そこに受信バケツ -ト 3 1 0を 格納する。
図 6 Bを参照すると、 バケツト管理部 1 2 4には、 宛先ァドレス 1 0 2および 宛先ポート 1 0 3用のパケット管理キュー 1 0 1と、 宛先アドレス 2 0 2および 宛先ポ一ト 2 0 3用のバケツト管理キュー 2 0 1と、 宛先アドレス 3 0 2および 宛先ポート 3 0 3用のバケツト管理キュー 3 0 1とが既に存在するものと仮定す る。 バケツト管理部 1 2 4は、 バケツト解析部 1 2 2から新しい受信パケット 1 1 3を受け取ると、 そのバケツトの宛先ァドレス 1 0 2および宛先ポート 1 0 3 に対応するバケツト管理キューが存在するかどうかをチェックする。 現在のキュ 一 1 0 1、 2 0 1および 3 0 1の中に受信バケツト 1 1 3の宛先ァドレス 1 0 2 および宛先ポート 1 0 3に対応するバケツト管理キュー 1 0 1が存在するときは 、 バケツト管理部 1 2 4は、 その宛先ァドレス 1 0 2および宛先ポート 1 0 3に 対応するバケツト管理キュー 1 0 1に順序番号 S Nに従って受信バケツト 1 1 3 を格納する。 そのために、 バケツト管理部 1 2 4は、 そのパケット 1 1 3の順序 番号をキュー 1 0 1中のパケット 1 1 0、 1 1 1および 1 1 2の順序番号と順次 比較する。 この順序番号 1 0 0 は'、 バケツト 1 1 1の順序番号 1 0 0 1より大 きく、 パケット 1 1 2の順序番号 1 0 0 3より小さいので、 そのパケット 1 1 3 はキュー 1 0 1中のパケット 1 1 1と 1 1 2の間に挿入される。 その新しい受信 バケツト 1 1 3がネットワークに既に送出済みのバケツトの順序番号より小さい とき、 パケット管理部 1 2 4はその受信パケットを破棄する。 この例では、 新し い受信パケットを格納するときにバケツトの順番の補正を行うが、 順番を補正せ ずに受信バケツトを受信順に格納して、 送信するときにバケツ卜の順番を補正し てもよい。
図 7は、 パケット管理部 1 2 4によって実行される、 図 3 Bのパケット管理キ ユー 3 2 0に格納されたパケットを送出するためのフローチャートを示している ステップ 7 0 2において、 バケツ卜管理部 1 2 4は、 バケツ卜管理キュー 3 2 0の先頭にあるパケットの順序番号が最後に (前回) 送信したパケットの順序番 号の次の番号かどうかを判定する。 その順序番号が最後に送信したパケットの順 序番号の次の番号であると判定された場合には、 ステップ 7 0 4において、 パケ ット管理部 1 2 4は、 その先頭にあるパケットを送信する。 その後、 手順はステ ップ 7 0 2に戻る。 従って、 そのキューにおける最後に送信したパケットの順序 番号に続く一連の順序番号を有する一連のバケツ卜が、 その順序番号の連続性が 切れるまでまたはパケット管理キューが空になるまで送出される。
その順序番号が最後に送信したパケットの順序番号の次の番号でないと判定さ れた場合には、 ステップ 7 1 4において、 パケット管理部 1 2 4は、 バケツト管 理キュー中の受信時刻の最も古い (早い) パケットの受信時刻と現在時刻との差 を計算する。 ステップ 7 1 6において、 パケット管理部 1 2 4は、 その差がパケ ット管理キューにおける所定のバッファリング時間または待ち時間より大きいか どうかを判定する。 その差がバケツト管理キューにおける所定のバッファリング 時間より大きいと判定されたときには、 ステップ 7 1 8において、 パケット管理 部 1 2 4は、 パケットの順序番号の連続性に関係なく、 先頭にある順序番号の最 も小さいパケットからその最も古い受信時刻のバケツトまでのバケツトを順次送 出する。 その後、 手順は図 7のルーチンを出るその差がその所定のバッファリン グ時間より大きく ¾いと判定されたときには、 手順は図 7のルーチン'を出る。 図 8 Aおよび 8 Bは、 パケット管理部 1 2 4におけるパケット管理キュー中の パケッ卜の例を示している。
図 8 Aを参照すると、 パケット管理キューにおいて、 最後の送出パケットの順 序番号は 4 0 0 0であり、 現在の先頭のバケツト 4 0 1の順序番号が 4 0 0 1で あり、 後続のパケット 4 0 2および 4 0 3の順序番号がそれぞれ 4 0 0 2および 4 0 0 4であったと仮定する。 従って、 パケッ卜管理部 1 2 4は、 先頭および後 続のバケツト 4 0 1および 4 0 2を順次送出する。 次のバケツト 4 0 3は その 順序番号 4 0 0 4が最後に送出したバケツト 4 0 0 2の順序番号 4 0 0 2と連続 しないので、 この時点では送出されない。
図 8 Bを参照すると、 パケット管理キュー 1 0 1において、 バケツト 4 1 0〜 4 1 4が格納されており、 パケット 4 0 9がまだ受信されていないと仮定する。 先頭のパケット 4 1 0の受信時刻は 1 0 : 0 0 : 0 0 : 5 0 0であり、 バケツト 4 1 0に続いてパケット 4 1 1〜4 1 4が順序番号の昇順に格納されている。 パ ケット管理キュ一における所定のバッファリングまたは待ち時間が 3 0 0 m sで 、 現時点で時刻 1 0 : 0 0 : 0 0 : 6 0 0を経過したとする。 従って、 管理部 1 2 4は、 図 7のフローチャートに従って、 先頭のパケット 4 1 0から最も古いパ ケット 4 1 3までのパケットを順次送出する。 次のバケツト 4 0 4は、 その順序 番号がパケット 4 1 3の順序番号に連続する番号でなければ、 この段階では送出 されない。
経路制御装置は、 できるだけ早くパケットを転送しなければならない。 即ち、 バケツトをパケット管理キューに保持する時間はできるだけ短いことが望ましい 。 従って、 単純にパケットのバッファリング時間を経路制御装置の設定によって 決めるのでなく、 パケットの実際の受信状態に基づいてバケツトをバッファに保 持する時間を動的に決定してもよい。 その保持時間の決定のために、 経路制御装 置は、 それぞれのパケットの受信時刻と順序番号から、 キュー中の順序番号に従 つて配置された隣接するパケットの間の受信時刻がどれだけの時間間隔で受信さ れたかを計算し、 その中で順序番号とは異なる順序で最大時間間隔で受信された パケットを抽出する。 例えば、 図 8 Bに示したような受信状態の例では、 その中 で順序番号とは異なる順序で 大時間間隔で受信されたバケツト 4 1 2と 4 1 3 の時間間隔は一 2 4 0 m sである。 このような計算を定期的に行い、 その最大の 時間間隔に基づいて、 パケットをバケツト管理キューに保持する最大時間を動的 に変更する。 その保持時間は、 余裕を持たせるために、 その最大時間間隔に一定 の時間を加算したもの、 あるいは一定の係数を乗算したものであってもよい。 次に、 ネットワーク中の経路制御装置のどれに送信順序補正の機能を持たせる か、 およびどの受信機に宛てられたバケツトの送信順序を補正するかを決定する 方法を説明する。 最も簡単な方法は, 前述の補正対象とするアドレス、 ポートお よびプロトコルのような送信順序が補正される受信バケツトの条件を、 全てのま たは選択された経路制御装置に直接設定する方法である。
図 9 Aおよび 9 Bは、 受信機 9 4 2からの要求に従って、 ネットワーク中の経 路制御装置 9 1 2〜9 2 0の中のどれに送信順序補正の機能を持たせるか、 およ びどの受信機 9 4 2へのバケツトの順序を補正するかを自動的に決定する方法を 示している。 図 9 Aおよび 9 Bを参照して、 受信機がプログラムの送信を送信機 に要求して受信する例を説明するが、 送信要求されるものは、 'ビデオおよびォー ディォ ·プログラム (番組) のようなプログラムに限定されることなく、 任意の コンテンツおよび情報であってもよい。
図 9 Aにおいて、 受信機 9 4 2は、 ユーザの要求または受信機 9 4 2上で動作 中のアプリケーションの要求に従って、 ネットワークを介して送信機 9 0 2に、 或るプログラムを表す一連のバケツトの送信を要求しかつパケッ卜の順序を補正 するよう要求するパケットを送信する。 この要求パケットは、 このパケットを受 信した最初の経路制御装置に、 バケツトの順序を補正する機能とそのための条件 とを設定させる命令を含んでいる。 この要求パケットは、 例えば、 経路 9 5 4、 9 5 6、 9 5 8および 9 6 0と、 経路制御装置 9 2 0、 9 1 8、 9 1 6および 9 1 2とを介して送信機 9 0 2に送信される。 この場合、 受信機 9 4 2からその要 求パケットを最初にかつ直接受信した経路制御装置 9 2 0が、 送信機 9 0 2から 受信機 9 4 2へ送信されるプログラムの一連のバケツトの順序を補正する制御を 実行するよう設定される。 その経路制御装置 9 2 0は、 その要求パケットにおけ るその命令を削除して、 その命令のないプログラム送信を要求するその要求パケ ットを次の経路制御装置 9 1 6に送信矛る。 経路制御装置 9 2 0は、 送信機 9 0 2からその受信機 9 4 2に宛てられたパケットを受信しかつそのパケットをその 受信機 9 4 2に直接送信するとき、 そのパケットの順序を補正するための制御を 行う。
図 9 Bにおいて、 受信機 9 4 2は、 ユーザの要求または受信機 9 4 2上で動作 中のアプリケーションの要求に従って、 ネットワークを介してプログラム送信機 9 0 2に、 或るプログラムを表す一連のパケットの送信を要求しかつパケットの 順序を補正するよう要求するパケットを送信する。 その要求パケットは、 図 9 A に例示された形態で受信機 9 4 2から送信機 9 0 2に送信される。 送信機 9 0 2 は、 その要求パケットの受信に応答して 応答または返信パケットを受信機 9 4 2に送信する。 その応答パケットは、 ネットワーク中の取り得る全ての経路 9 6 2、 9 6 4、 9 6 6、 9 6 8および 9 7 0と、 経路制御装置 9 1 2、 9 1 6、 9 1 8および 9 2 0とを介して送信機 9 0 2から受信機 9 4 2に送信される。 その応答パケットは、 その同じ応答バケツトを複数回または複数経路から受信 した経路制御装置に、 バケツトの順序を補正する機能とそのための条件とを設定 させる命令を含んでいる。 この場合、 その同じ応答バケツトを複数回または複数 経路から受信した経路制御装置 9 1 8が、 プログラム送信機 9 0 2からプロダラ ム受信機 9 4 2へ送信されるプログラムの一連のパケッ卜の順序を補正する制御 を実行するよう設定される。 経路制御装置 9 1 8は、 同じ応答パケットを複数回 受け取ったとき、 '2番目の応答パケットを破棄するようにする。 それによつて、 送信機 9 0 2から複数の経路でパケッ卜が受信される可能性のある経路制御装置 においてのみバケツト順序の補正を行うように設定できる。 パケットにタイムスタンプが付加されているとき、 経路制御装置は、 単に送信 順序を補正するだけでなく、 そのタイムスタンプに基づいて送信の間隔を調整す ることによって伝送ジッ夕を補正してもよい。 この場合、 管理部 124は、 パケ ット管理データとしてタイムスタンプをも保持する必要がある。 管理部 124は 、 それぞれのパケット管理キューについて、 受信時刻とタイムスタンプの差から 、 どの時刻に次のパケットを送信するかを計算する。 その計算の際、 管理部 12 4は、 バケツト管理キューにおいて受信パケットの間に順序番号に従って補正さ ή挿入されたパケット、 即ち遅れて受信されたパケットと、 その後続の順序番号 を有するパケットとの間の受信時刻の差を計算する。 管理部 124は、 その差が 最も大きい挿入されたパケットを基準にして、 バケツト管理キュー中のバケツト の送信時刻を決定する。
図 10は、 経路制御装置において伝送ジッタを補正する方法を説明するのに役 立つ。 パケット 501、 503および 504が順次受信され、 その後バケツト 5 02が受信されたものとする。 バケツト 502の受信時刻は、 後続の順序番号を 有するパケット 503の受信時刻から 180msだけ遅れて受信されたとする。 このバケツト 502の受信時刻とその後続のバケツト 503の受信時刻との差が 最も大きい。 従って、 パケット 502を基準としてパケット管理キュー中のパケ ット 501〜 504の送信時刻を決定する。 バケツト 502の受信時刻とタイム スタンプは、 それぞれ 10020および 10 : 00 : 00 : 500であり、 パケ ット 503との間の差 180msの遅れはそのバケツト管理キューの待ち時間 2 00msに対して 20msだけ余裕がある。 従って、 タイムスタンプ 10020 のバケツトに対して、 受信時刻にその余裕時間 20msを加算して得られた 10 : 00 : 00 : 520を送出時刻と決定する。 他のバケツト 501、 503およ び 504は、 それぞれのタイムスタンプと基準バケツト 502のタイムスタンプ の差に基づいてそれぞれの送出時刻を決定する。 例えば、 パケット 501のタイ ムスタンプは 10000であり、 基準パケット 502のタイムスタンプ 1002 0より 20msだけ小さいのでく パケット 502の送出時刻 10 : 00 : 00 : 520より 20msだけ早い 10 : 00 : 00 : 500をバケツト 501の送出 時刻とする。 このように、 経路制御装置でパケットのジッタを補正することによ つて、 受信機におけるジッ夕補正のための処理負荷を低減できる。
以上説明した実施形態は典型例として挙げたに過ぎず、 その変形およびバリェ ーションは当業者にとって明らかであり、 当業者であれば本発明の原理および請 求の範囲に記載した発明の範囲を逸脱することなく上述の実施形態の種々の変形 を行えることは明らかである。

Claims

請 求 の 範 囲
1 . ネットワークに接続可能な経路制御装置であつて、
所定の送信機から所定の受信機に宛てられていて順序番号を有する一連のパケ ットを受信してキューに宛先毎に一時的に格納し、 前記格納された宛先毎のパケ ットの受信の順序に関係なく、 前記順序番号に従って前記格納されたバケツトを 送信するよう構成されたプロセッサを具える、 経路制御装置。
2. 前記プロセッサ 、 前記受信されたパケットが、 受信の順序に対す ¾パケ ットの送信の順序を補正するための所定の条件に適合するかどうかを判定し、 前 記適合するパケットだけをキューに格納するものである、 請求項 1に記載の装置
3 . 最後に送出されたバケツトの順序番号の次の順序番号を有するバケツトが 受信されず、 かつ前記キューに格納されているバケツトの中で最も早く受信した パケットの受信時間から所定時間を経過したときは、 前記プロセッサは、 前記最 も早く受信したパケットとそれより小さい順序番号を有する前記キュー中のパケ ットとを送出するものである、 請求項 1に記載の装置。
4. 前記プロセッサは、 最後に送出されたバケツトの順序番号より小さい順序 番号を有するパケットを受信したとき、 前記小さい順序番号を有するパケットを 破棄するものである、 請求項 1に記載の装置。
5 . 前記プロセッサは、 前記受信機から前記送信機に宛てられたパケット中の 要求に従って、 前記順序番号に従って前記格納されたパケットを送信するもので ある'、 請求項 1に記載の装置。
6 . 前記プロセッサは、 前記送信機から前記受信機に宛てられた応答パケット 中の要求に従って、 前記順序番号に従って前記格納されたパケットを送信するも のである、 請求項 1に記載の装置。
7 . 前記プロセッサは、 前記キューに格納されたパケットの最大保持時間を、 順序番号に対して異なる順序で受信されたバケツトの間の受信時刻の差に基づい て決定するものである、 請求項 1に記載の装置。
8 . 前記プロセッサは、 前記パケットのジッ夕を前記パケットに付加された夕 ィムスタンプに従って補正して前記パケットを送出するものである、 請求項
9. ネットワークに接続可能な経路制御装置用のプログラムであって、 所定の送信機から所定の受信機に宛てられていて順序番号を有する一連のパケ ットを受信してキュ一に宛先毎に一時的に格納するステップと、
前記格納された宛先毎のバケツ卜の受信の順序に関係なく、 前記順序番号に従 つて前記格納されたバケツトを送信するステップと、
を実行させるよう動作可能なプログラム。
PCT/JP2003/004729 2003-04-14 2003-04-14 順序番号に従って受信パケットを送信する経路制御装置 WO2004093395A1 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
PCT/JP2003/004729 WO2004093395A1 (ja) 2003-04-14 2003-04-14 順序番号に従って受信パケットを送信する経路制御装置
JP2004570865A JPWO2004093395A1 (ja) 2003-04-14 2003-04-14 順序番号に従って受信パケットを送信する経路制御装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/JP2003/004729 WO2004093395A1 (ja) 2003-04-14 2003-04-14 順序番号に従って受信パケットを送信する経路制御装置

Publications (1)

Publication Number Publication Date
WO2004093395A1 true WO2004093395A1 (ja) 2004-10-28

Family

ID=33193216

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2003/004729 WO2004093395A1 (ja) 2003-04-14 2003-04-14 順序番号に従って受信パケットを送信する経路制御装置

Country Status (2)

Country Link
JP (1) JPWO2004093395A1 (ja)
WO (1) WO2004093395A1 (ja)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008227623A (ja) * 2007-03-08 2008-09-25 Ntt Communications Kk パケット転送装置及びパケット転送方法
JP2022530723A (ja) * 2019-05-03 2022-06-30 アクロメイト・カンパニー,リミテッド 呼処理のための分散ネットワークシステム、同システムによって行われる呼処理方法、および呼処理方法を実行するプログラムが記録された記録媒体
JP2022531636A (ja) * 2019-05-03 2022-07-07 アクロメイト・カンパニー,リミテッド 呼処理のためのリレー装置、リレー装置によって行われる呼処理方法、および呼処理方法を実行するプログラムが記録された記録媒体

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH06276230A (ja) * 1993-03-23 1994-09-30 Fujitsu Ltd 非同期情報通信制御方法および装置
JPH0738608A (ja) * 1993-07-19 1995-02-07 Nec Corp 音声パケット受信装置
JPH07202906A (ja) * 1993-12-29 1995-08-04 Toshiba Corp ネットワーク接続装置および情報通信システム
JP2001045056A (ja) * 1999-07-29 2001-02-16 Nippon Telegr & Teleph Corp <Ntt> 通信システム
JP2002022733A (ja) * 2000-07-05 2002-01-23 Sanyo Special Steel Co Ltd 鋼材の脱炭層評価方法
JP2002247578A (ja) * 2001-02-21 2002-08-30 Nec Corp ビデオパケットの受信復号システムおよび送信システム
JP2003087317A (ja) * 2001-09-12 2003-03-20 Nec Corp 音声パケット遅延揺らぎ吸収装置及び吸収方法

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH06276230A (ja) * 1993-03-23 1994-09-30 Fujitsu Ltd 非同期情報通信制御方法および装置
JPH0738608A (ja) * 1993-07-19 1995-02-07 Nec Corp 音声パケット受信装置
JPH07202906A (ja) * 1993-12-29 1995-08-04 Toshiba Corp ネットワーク接続装置および情報通信システム
JP2001045056A (ja) * 1999-07-29 2001-02-16 Nippon Telegr & Teleph Corp <Ntt> 通信システム
JP2002022733A (ja) * 2000-07-05 2002-01-23 Sanyo Special Steel Co Ltd 鋼材の脱炭層評価方法
JP2002247578A (ja) * 2001-02-21 2002-08-30 Nec Corp ビデオパケットの受信復号システムおよび送信システム
JP2003087317A (ja) * 2001-09-12 2003-03-20 Nec Corp 音声パケット遅延揺らぎ吸収装置及び吸収方法

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008227623A (ja) * 2007-03-08 2008-09-25 Ntt Communications Kk パケット転送装置及びパケット転送方法
JP4724679B2 (ja) * 2007-03-08 2011-07-13 エヌ・ティ・ティ・コミュニケーションズ株式会社 パケット転送装置及びパケット転送方法
JP2022530723A (ja) * 2019-05-03 2022-06-30 アクロメイト・カンパニー,リミテッド 呼処理のための分散ネットワークシステム、同システムによって行われる呼処理方法、および呼処理方法を実行するプログラムが記録された記録媒体
JP2022531636A (ja) * 2019-05-03 2022-07-07 アクロメイト・カンパニー,リミテッド 呼処理のためのリレー装置、リレー装置によって行われる呼処理方法、および呼処理方法を実行するプログラムが記録された記録媒体
JP7218035B2 (ja) 2019-05-03 2023-02-06 アクロメイト・カンパニー,リミテッド 呼処理のためのリレー装置、リレー装置によって行われる呼処理方法、および呼処理方法を実行するプログラムが記録された記録媒体
JP7288266B2 (ja) 2019-05-03 2023-06-07 アクロメイト・カンパニー,リミテッド 呼処理のための分散ネットワークシステム、同システムによって行われる呼処理方法、および呼処理方法を実行するプログラムが記録された記録媒体

Also Published As

Publication number Publication date
JPWO2004093395A1 (ja) 2006-07-06

Similar Documents

Publication Publication Date Title
EP1705845B1 (en) Load distributing method
US7558269B2 (en) Method for transmitting high-priority packets in an IP transmission network
US7321591B2 (en) Methods and systems for providing differentiated quality of service in a communications system
US9621384B2 (en) Systems and methods for communicating data over parallel data paths
US8681798B2 (en) Communications apparatus and frame control method
US6917589B2 (en) Automatic quality of service assignment in ethernet switches
JPWO2005067227A6 (ja) 負荷分散方法、ノード及び制御プログラム
US20120102136A1 (en) Data caching system
US7664112B2 (en) Packet processing apparatus and method
JP2002300193A (ja) ルータ
US7035217B1 (en) Router-assisted multicast congestion control
US8462804B2 (en) Self-cleaning mechanism for error recovery
US7408879B2 (en) Router, terminal apparatus, communication system and routing method
JP2001024678A (ja) データ伝送ネットワーク中で輻輳を予測して制御する方法およびノード
DK2119141T3 (en) Method of transmission / reception in real time of data packets between a server and a client terminal, corresponding server and terminal
JP2004520725A (ja) サテライトを介するインターネット
US8068515B2 (en) Faster multimedia synchronization of broadcast streams using router caching of RTCP packets
EP2763358A1 (en) Network system, front-end device, and control message transmission rate minimizing method
WO2004093395A1 (ja) 順序番号に従って受信パケットを送信する経路制御装置
Evensen et al. Using multiple links to increase the performance of bandwidth-intensive UDP-based applications
Neukom High-Performance File Transfer in SCION
JP2000078188A (ja) 優先経路制御方法及びルータ装置
Sailer et al. HTMT: High-Throughput multipath tunnelling for asymmetric paths
Shi et al. A reliable real-time transport protocol for control systems over wireless networks
Benadoud et al. Enhancing TCP over satellite links using CANIT algorithm

Legal Events

Date Code Title Description
AK Designated states

Kind code of ref document: A1

Designated state(s): JP US

WWE Wipo information: entry into national phase

Ref document number: 2004570865

Country of ref document: JP