JP2010063070A - Flow control method - Google Patents

Flow control method Download PDF

Info

Publication number
JP2010063070A
JP2010063070A JP2008229590A JP2008229590A JP2010063070A JP 2010063070 A JP2010063070 A JP 2010063070A JP 2008229590 A JP2008229590 A JP 2008229590A JP 2008229590 A JP2008229590 A JP 2008229590A JP 2010063070 A JP2010063070 A JP 2010063070A
Authority
JP
Japan
Prior art keywords
transmission
frame
flow control
data
transmitted
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
JP2008229590A
Other languages
Japanese (ja)
Inventor
Maki Amano
真樹 天野
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Oki Electric Industry Co Ltd
Original Assignee
Oki Electric Industry Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Oki Electric Industry Co Ltd filed Critical Oki Electric Industry Co Ltd
Priority to JP2008229590A priority Critical patent/JP2010063070A/en
Publication of JP2010063070A publication Critical patent/JP2010063070A/en
Pending legal-status Critical Current

Links

Images

Landscapes

  • Communication Control (AREA)

Abstract

<P>PROBLEM TO BE SOLVED: To provide a flow control method for highly precisely preventing overflow in communication equipment and reducing cost of communication equipment itself. <P>SOLUTION: It is decided whether interruption transmission of a flow control data signal instructing stop of data transmission can be performed or not in a confronted device being a communication opposite party based on a non-transmission data amount of a protocol data unit (PDU), which is in the middle of transmission to the confronted device from communication equipment. <P>COPYRIGHT: (C)2010,JPO&INPIT

Description

本発明は、パケット又はフレーム等のプロトコル・データ・ユニット(PDU:Protocol Data Unit)毎にデータの送受信を行うデータ通信のフロー制御方法に関するものである。   The present invention relates to a data communication flow control method for transmitting and receiving data for each protocol data unit (PDU) such as a packet or a frame.

IEEE(Institute of Electrical and Electronics Engineers)802.3x規格で規定されているイーサネットにおいて使用される通信装置は、受信フレームを一旦蓄積しておくバッファメモリ(受信バッファ)を有している。このような通信装置は、受信したフレームの処理をフレームの受信順序に従って実施する。しかしながら、バッファメモリの容量は有限であり、蓄積可能なデータ量は決められているため、処理データ量よりも受信データ量が多い状態が続くと、未処理の受信データ量がバッファメモリの容量を超えてしまい、蓄積することが出来ない受信フレームは処理されること無く廃棄される(すなわち、オーバーフロー)。このような状態では、通信装置の処理能力を超えて受信されるフレームが消失するため、通信装置によるデータ通信が正確に実施されない。   A communication device used in Ethernet defined by the Institute of Electrical and Electronics Engineers (IEEE) 802.3x standard has a buffer memory (reception buffer) for temporarily storing received frames. Such a communication apparatus performs processing of received frames in accordance with the frame reception order. However, since the capacity of the buffer memory is finite and the amount of data that can be stored is determined, if the amount of received data is larger than the amount of processed data, the amount of unprocessed received data will reduce the capacity of the buffer memory. Received frames that exceed and cannot be accumulated are discarded without processing (ie, overflow). In such a state, a frame received exceeding the processing capability of the communication device is lost, so that data communication by the communication device is not accurately performed.

上記のような輻輳廃棄を避ける方法として、全二重通信の場合には、IEEE802.3xのMAC制御プロトコルで規定されるフロー制御を行うことが従来から知られている。具体的には、通信装置の受信バッファに受信バッファの閾値以上のデータ量が蓄積されると、通信の相手側の通信装置にポーズフレーム(Pauseフレーム)が送信され、ポーズフレームを受信した通信装置からのフレーム送信が所定時間だけ停止される。特許文献1には、上記のようなフロー制御方法及びそれに使用される通信装置が開示されている。   As a method for avoiding congestion discard as described above, in the case of full-duplex communication, it is conventionally known to perform flow control defined by the IEEE 802.3x MAC control protocol. Specifically, when a data amount equal to or greater than the threshold value of the reception buffer is accumulated in the reception buffer of the communication device, a communication device that transmits a pause frame (Pause frame) to the communication device on the other side of communication and receives the pause frame Frame transmission from is stopped for a predetermined time. Patent Document 1 discloses a flow control method as described above and a communication device used therefor.

しかしながら、上述したフロー制御方法においては、以下のような問題が生じていた。図1を参照しつつ、従来のフロー制御方法における問題点を説明する。   However, the following problems have occurred in the flow control method described above. Problems in the conventional flow control method will be described with reference to FIG.

図1に示されているように、通信装置Aが通信装置(対向装置)Bからn番目のフレームを受信すると、n番目のフレームが通信装置Aの受信バッファに蓄積される。n番目のフレームが受信バッファに蓄積された時点で、受信バッファの容量の閾値(ポーズフレーム送信閾値)までフレームが蓄積すると、通信装置Aは対向装置Bにポーズフレームを送信することになる。しかしながら、通信装置Aは、m+1番目のフレームを対向装置Bに送信中であるため、m+1番目のフレームの送信終了後にポーズフレームを送信することになる。このようなポーズフレームの送信遅延によって、通信装置Aはポーズフレームの送信待機中にn+1番目のフレームを受信し、受信バッファの容量の閾値を超えてフレームを蓄積することになる。   As illustrated in FIG. 1, when the communication device A receives the nth frame from the communication device (opposite device) B, the nth frame is accumulated in the reception buffer of the communication device A. When the nth frame is accumulated in the reception buffer, if the frame is accumulated up to the reception buffer capacity threshold (pause frame transmission threshold), the communication apparatus A transmits a pause frame to the opposite apparatus B. However, since the communication apparatus A is transmitting the (m + 1) th frame to the opposite apparatus B, the communication apparatus A transmits a pause frame after the transmission of the (m + 1) th frame is completed. Due to the pause frame transmission delay, the communication apparatus A receives the (n + 1) th frame while waiting for the pause frame transmission, and accumulates frames exceeding the capacity threshold of the reception buffer.

また、通信装置Aからポーズフレームが送信された時点において、対向装置Bからn+2番目のフレームが送信中の場合には、対向装置Bのフレームの送信は、n+2番目のフレームの送信完了後に停止される。すなわち、対向装置Bは、n+3番目以降のフレームの送信を停止することになる。従って、通信装置Aは、上述したn+1番目のフレームに続いてn+2番目のフレームも受信バッファに蓄積することになる。   When the n + 2 frame is being transmitted from the opposite device B at the time when the pause frame is transmitted from the communication device A, the transmission of the frame of the opposite device B is stopped after the transmission of the n + 2 frame is completed. The That is, the opposite apparatus B stops transmission of the (n + 3) th and subsequent frames. Accordingly, the communication apparatus A accumulates the n + 2th frame in the reception buffer following the above-described n + 1th frame.

上記した通信装置Aにおけるポーズフレームの送信遅延により、受信バッファの容量の閾値を超えて2つのフレームを受信バッファに蓄積する必要があるため、受信バッファの容量から転送可能な最大フレームサイズの2倍のデータ量を減じた値を閾値に設定する必要があった。すなわち、通信装置は、バッファの空き容量に十分な余裕がある状態においてポーズフレームの送信起動を開始する必要があった。これによって、通信装置は大容量の受信バッファを備えることが必要となるため、通信装置自体のコストが上昇する問題点があった。   Due to the transmission delay of the pause frame in the communication apparatus A described above, it is necessary to store two frames in the reception buffer exceeding the capacity threshold of the reception buffer. Therefore, it is twice the maximum frame size that can be transferred from the capacity of the reception buffer. The value obtained by subtracting the amount of data needed to be set as the threshold value. That is, the communication apparatus needs to start the transmission activation of the pause frame in a state where there is a sufficient space in the buffer free space. As a result, the communication device needs to have a large-capacity reception buffer, which raises the problem of an increase in the cost of the communication device itself.

なお、当該減ずるデータ量を転送可能なフレームの最大サイズの2倍とする理由は、n+1番目及びn+2番目のフレームがそれぞれ転送可能な最大フレームサイズである場合でもオーバーフローを防止するためである。
特開2004−7180号公報
The reason why the data amount to be reduced is twice the maximum transferable frame size is to prevent overflow even when the (n + 1) th and (n + 2) th frames have the maximum transferable frame size.
JP 2004-7180 A

本発明は、以上の如き事情に鑑みてなされたものであり、通信装置におけるオーバーフローを高精度に防止し、通信装置自体のコスト低減を図ることができるフロー制御方法を提供する。   The present invention has been made in view of the above circumstances, and provides a flow control method capable of preventing overflow in a communication device with high accuracy and reducing the cost of the communication device itself.

上述した課題を解決するために、本発明のフロー制御方法は、プロトコル・データ・ユニット(PDU)毎にデータの送受信を行うデータ通信において、通信装置の受信バッファ内に蓄積されたデータ量が所定閾値を超えた場合に、通信装置の通信相手である対向装置に対してデータ送信の停止を指示するフロー制御用データ信号を生成して対向装置に送信し、フロー制御用データ信号に基づいて所定の時間だけ対向装置から通信装置に対するデータ送信を停止するフロー制御方法であって、通信装置から対向装置に対して送信中のPDUの未送信データ量に基づいてフロー制御用データ信号を対向装置に割込み送信するか否かを決定することを特徴とする。   In order to solve the above-described problem, the flow control method of the present invention is configured so that the amount of data stored in a reception buffer of a communication device is predetermined in data communication in which data is transmitted and received for each protocol data unit (PDU). When the threshold value is exceeded, a flow control data signal for instructing the opposite device, which is a communication partner of the communication device, to stop data transmission is generated and transmitted to the opposite device, and predetermined based on the flow control data signal. Is a flow control method for stopping data transmission from the opposite device to the communication device for a period of time, wherein the flow control data signal is sent to the opposite device based on the amount of untransmitted PDU being transmitted from the communication device to the opposite device. It is characterized by determining whether or not to transmit an interrupt.

本発明のフロー制御方法によれば、通信相手である対向装置に対するデータ送信の停止を指示するフロー制御用データ信号の割込み送信の実施が可能か否かを通信装置から対向装置に対して送信中のPDUの未送信データ量に基づいて決定することにより、通信装置におけるオーバーフローを高精度に防止し、通信装置自体のコスト低減を図ることができる。   According to the flow control method of the present invention, whether or not the interrupt transmission of the flow control data signal instructing the stop of data transmission to the opposite device that is the communication partner can be performed is being transmitted from the communication device to the opposite device. By determining based on the untransmitted data amount of the PDU, overflow in the communication device can be prevented with high accuracy, and the cost of the communication device itself can be reduced.

以下、本発明の実施例について添付図面を参照しつつ詳細に説明する。   Hereinafter, embodiments of the present invention will be described in detail with reference to the accompanying drawings.

先ず、図2を参照しつつ、本発明の実施例であるフロー制御方法が適用される通信装置の構成を説明する。図2は、本発明の実施例であるフロー制御方法が適用される通信装置の構成を示すブロック図である。   First, the configuration of a communication apparatus to which a flow control method according to an embodiment of the present invention is applied will be described with reference to FIG. FIG. 2 is a block diagram showing a configuration of a communication apparatus to which the flow control method according to the embodiment of the present invention is applied.

図2に示されているように、通信装置10と通信装置(対向装置)20とは、伝送路30を介して接続されている。通信装置10と通信装置20とは、IEEE(Institute of Electrical and Electronics Engineers)802.3x規格で規定されたイーサネットで使用される通信装置であり、IEEE802.3x規格に準拠してフレーム毎に通信を行う。   As shown in FIG. 2, the communication device 10 and the communication device (opposing device) 20 are connected via a transmission path 30. The communication device 10 and the communication device 20 are communication devices used in the Ethernet specified by the Institute of Electrical and Electronics Engineers (IEEE) 802.3x standard, and perform communication for each frame in accordance with the IEEE 802.3x standard. Do.

通信装置10は、送信バッファ部11、送信フレーム管理部12、受信バッファ部13及び受信フレーム管理部14から構成されている。通信装置20は、通信装置10と同様の構成であり、送信バッファ部21、送信フレーム管理部22、受信バッファ部23及び受信フレーム管理部24から構成されている。   The communication device 10 includes a transmission buffer unit 11, a transmission frame management unit 12, a reception buffer unit 13, and a reception frame management unit 14. The communication device 20 has the same configuration as that of the communication device 10 and includes a transmission buffer unit 21, a transmission frame management unit 22, a reception buffer unit 23, and a reception frame management unit 24.

送信バッファ部11は、送信用のフレームを一時的に蓄積する。また、送信バッファ部11は、送信フレーム管理部12の送信指示及び送信停止指示に応じて、送信フレーム管理部12に対してフレームの送信及び送信停止を行う。   The transmission buffer unit 11 temporarily accumulates transmission frames. In addition, the transmission buffer unit 11 performs frame transmission and transmission stop to the transmission frame management unit 12 in response to a transmission instruction and transmission stop instruction from the transmission frame management unit 12.

送信フレーム管理部12は、送信バッファ部11にフレームの送信及び送信停止を指示する。また、送信フレーム管理部12は、受信バッファ部13の蓄積データ量が閾値を超えた場合に通知される信号に応じ、フレームの送信停止を指示するためのフロー制御用データ信号であるポーズフレーム(Pauseフレーム)を生成する。更に、送信フレーム管理部12は、生成するポーズフレーム内のデータを使用して送信停止時間を指定することができる。送信フレーム管理部21は、送信バッファ部11から供給されるフレームと生成したポーズフレームとから一方を選択し、選択したフレームを伝送路30を介して通信装置20に送信する。更に、送信フレーム管理部21は、受信フレーム管理部14からの送信停止指示に応じてフレームの送信を停止する。なお、送信フレーム管理部12は、送信停止時間を「0」に指定することで送信再開を指示することもできる。例えば、通信装置10は、通信装置20に対してポーズフレームを送信した後に、フレームの送信再開を要求するための送信再開指示用データ信号を生成し、当該送信再開指示用データ信号を通信装置20に送信することができる。これによって、通信装置20から通信装置10へのフレームの送信が再開されることになる。   The transmission frame management unit 12 instructs the transmission buffer unit 11 to transmit and stop transmission of frames. Further, the transmission frame management unit 12 responds to a signal notified when the amount of data stored in the reception buffer unit 13 exceeds a threshold value, and a pause frame (a flow control data signal for instructing stop of frame transmission). Pause frame) is generated. Furthermore, the transmission frame management unit 12 can specify the transmission stop time using data in the generated pause frame. The transmission frame management unit 21 selects one of the frame supplied from the transmission buffer unit 11 and the generated pause frame, and transmits the selected frame to the communication device 20 via the transmission path 30. Further, the transmission frame management unit 21 stops frame transmission in response to a transmission stop instruction from the reception frame management unit 14. The transmission frame management unit 12 can also instruct transmission resumption by designating the transmission stop time to “0”. For example, after transmitting a pause frame to the communication device 20, the communication device 10 generates a transmission resumption instruction data signal for requesting frame transmission resumption, and transmits the transmission resumption instruction data signal to the communication device 20. Can be sent to. As a result, transmission of frames from the communication device 20 to the communication device 10 is resumed.

また、送信フレーム管理部12は、受信バッファ部13の蓄積データ量が閾値を超えた場合に通知される信号に応じて、送信中のフレームの全データ量(すなわち、フレームサイズ)及び送信済みデータ量から未送信データ量の算出を行う。ここで、送信フレーム管理部12は、送信中のフレームのヘッダ情報からフレームの全データ量を確認することができる。また、送信フレーム管理部12は、常に各フレームの送信状況を監視しているため、蓄積データ量が閾値を超えた旨の通知を受けた時点における送信中のフレームの送信済みデータ量を取得することができる。送信フレーム管理部12は、当該算出した未送信データ量と予め設定された未送信出データ量の閾データ量(アボートデータ残量閾値)との比較を行う。送信フレーム管理部12は、未送信データ量がアボートデータ残量閾値よりも大きい場合に、送信バッファ部11にフレームの送信を中止させ、送信が中止されたフレームを送信済みデータのみからなるフレームとしてフレーム送信を完了させる(すなわち、アボート処理を実行する)。その後、送信フレーム管理部12は、生成したポーズフレームを通信装置20に送信する。このように、送信中であるフレームの送信がアボート処理され、ポーズフレームの送信が割り込むことにより、通信装置20からのフレームの送信が早期に停止される。   Further, the transmission frame management unit 12 determines the total data amount of the frame being transmitted (that is, the frame size) and the transmitted data according to the signal notified when the accumulated data amount of the reception buffer unit 13 exceeds the threshold value. The amount of untransmitted data is calculated from the amount. Here, the transmission frame management unit 12 can confirm the total data amount of the frame from the header information of the frame being transmitted. Further, since the transmission frame management unit 12 constantly monitors the transmission status of each frame, the transmission frame management unit 12 acquires the transmitted data amount of the frame being transmitted at the time when the notification that the accumulated data amount exceeds the threshold is received. be able to. The transmission frame management unit 12 compares the calculated untransmitted data amount with a preset threshold data amount (an abort data remaining amount threshold) of the untransmitted data amount. The transmission frame management unit 12 causes the transmission buffer unit 11 to cancel frame transmission when the amount of untransmitted data is larger than the abort data remaining amount threshold, and sets the frame for which transmission has been stopped as a frame including only transmitted data. Frame transmission is completed (ie, abort processing is executed). Thereafter, the transmission frame management unit 12 transmits the generated pause frame to the communication device 20. As described above, the transmission of the frame being transmitted is aborted, and the transmission of the pause frame interrupts, whereby the transmission of the frame from the communication device 20 is stopped early.

一方、送信フレーム管理部12は、未送信データ量がアボートデータ残量閾値よりも小さい場合に、送信中であるフレームの送信完了を待ち、生成したポーズフレームを通信装置20に送信する。このように、未送信データ量がアボートデータ残量閾値より小さい場合においてアボート処理を実施せず、フレーム送信完了後にポーズフレームの送信を行うことによって、異常フレームの送信及びフレームの再送信の回数が抑制される。これにより、フレームの再送信処理に伴うデータ転送レートの低下が抑制され、送信バッファ11のフレーム滞留が防止される。すなわち、上述した場合におけるアボート処理を行わないことは、送信バッファ11におけるオーバーフロー及びフレーム廃棄を避ける効果がある。   On the other hand, when the amount of untransmitted data is smaller than the abort data remaining amount threshold, the transmission frame management unit 12 waits for the completion of transmission of the frame being transmitted and transmits the generated pause frame to the communication device 20. As described above, when the amount of untransmitted data is smaller than the abort data remaining amount threshold value, the abort process is not performed, and the pause frame is transmitted after the frame transmission is completed, so that the number of abnormal frame transmission and frame retransmission can be reduced. It is suppressed. As a result, a decrease in the data transfer rate associated with the frame retransmission process is suppressed, and frame retention in the transmission buffer 11 is prevented. That is, not performing the abort process in the above-described case has an effect of avoiding overflow and frame discard in the transmission buffer 11.

なお、上述したアボートデータ残量閾値は、例えば、通信装置10の入力部(図示せず)の入力信号、又は中央制御部(図示せず)からの信号によって変更することができる設定値である。また、上述したアボートデータ残量閾値は、例えば、送信中のフレームの送信を待ってポーズフレームが通信装置10から通信装置20に対して送信された場合に、ポーズフレーム送信後に通信装置10が通信装置20から受信する最大のデータ量に基づいて決定される。   The abort data remaining amount threshold described above is a set value that can be changed by, for example, an input signal of an input unit (not shown) of the communication device 10 or a signal from a central control unit (not shown). . In addition, the above-described abort data remaining amount threshold is set such that, for example, when a pause frame is transmitted from the communication apparatus 10 to the communication apparatus 20 after waiting for transmission of a frame being transmitted, the communication apparatus 10 communicates after transmitting the pause frame. It is determined based on the maximum amount of data received from the device 20.

受信フレーム管理部14は、通信装置20から供給されるフレームを識別する。例えば、通信装置20から通常のフレームが供給された場合には、受信フレーム管理部14は、当該供給されたフレームを受信バッファ部13に一旦蓄積する。また、通信装置20からポーズフレームが供給された場合には、受信フレーム管理部14は、供給されたポーズフレーム内の情報(停止時間等)に基づいて送信フレーム管理部12にフレームの送信停止指示及び停止時間を指示する。   The reception frame management unit 14 identifies a frame supplied from the communication device 20. For example, when a normal frame is supplied from the communication device 20, the reception frame management unit 14 temporarily stores the supplied frame in the reception buffer unit 13. When a pause frame is supplied from the communication device 20, the reception frame management unit 14 instructs the transmission frame management unit 12 to stop transmission of a frame based on information (stop time, etc.) in the supplied pause frame. And indicate stop time.

受信バッファ部13は、受信フレーム管理部14から供給されるフレームを一時的に蓄積する。また、受信バッファ部13は、蓄積したデータ量が予め設定されたバッファ容量の閾値(バッファ閾値)を超えた場合に、送信フレーム管理部12に蓄積データ量がバッファ閾値を超えたことを通知するとともに、ポーズフレームの送信を要求する。上述したバッファ閾値は、通信装置10の処理能力に応じて変更することができる。例えば、バッファ閾値は、通信装置10の入力部(図示せず)の入力信号、又は制御CPU(図示せず)からの信号によって変更される。   The reception buffer unit 13 temporarily accumulates frames supplied from the reception frame management unit 14. The reception buffer unit 13 notifies the transmission frame management unit 12 that the accumulated data amount exceeds the buffer threshold when the accumulated data amount exceeds a preset buffer capacity threshold (buffer threshold). At the same time, it requests transmission of a pause frame. The buffer threshold described above can be changed according to the processing capability of the communication device 10. For example, the buffer threshold is changed by an input signal of an input unit (not shown) of the communication device 10 or a signal from a control CPU (not shown).

なお、通信装置20は通信装置10と同様の構成であるため、通信装置20の各構成部分の説明は省略する。   The communication device 20 has the same configuration as that of the communication device 10, and thus description of each component of the communication device 20 is omitted.

次に、図3を参照しつつ、本発明の実施例であるフロー制御方法を説明する。   Next, a flow control method according to an embodiment of the present invention will be described with reference to FIG.

受信バッファ部13は、バッファ内の蓄積データ量を常時監視する(ステップS1)。更に、受信バッファ部13は、バッファ内の蓄積データ量がバッファ閾値を超えたかを判別する(ステップS2)。バッファ内の蓄積データ量がバッファ閾値を超えていない場合(ステップS2:No)には、受信バッファ部13は、引き続きバッファ内の蓄積データ量の監視を行う。バッファ内の蓄積データ量がバッファ閾値を超えた場合(ステップS2:Yes)には、受信バッファ部13は、送信フレーム管理部12にバッファ内の蓄積データ量がバッファ閾値を超えたことを通知するとともに、ポーズフレームの送信を要求する(ステップS3)。   The reception buffer unit 13 constantly monitors the amount of data stored in the buffer (step S1). Furthermore, the reception buffer unit 13 determines whether the amount of data stored in the buffer exceeds the buffer threshold (step S2). If the accumulated data amount in the buffer does not exceed the buffer threshold (step S2: No), the reception buffer unit 13 continues to monitor the accumulated data amount in the buffer. When the accumulated data amount in the buffer exceeds the buffer threshold (step S2: Yes), the reception buffer unit 13 notifies the transmission frame management unit 12 that the accumulated data amount in the buffer has exceeded the buffer threshold. At the same time, a pause frame transmission is requested (step S3).

受信バッファ部13から上記通知を受けた送信フレーム管理部12は、現時点においてフレームが送信中であるか否かを確認する(ステップS4)。送信バッファ部11からフレームが送信中である場合(ステップS4:Yes)には、送信フレーム管理部12は、送信中のフレームのヘッダ情報から当該フレームの全データ量(すなわち、フレームサイズ)を取得する。また、送信フレーム管理部12は、送信中のフレームを監視し、送信中であるフレームの送信済みデータ量を取得する。更に、送信フレーム管理部12は、送信中のフレームの全データ量から既に送信済みのデータ量を減ずることにより、送信中のフレームの未送信データ量を算出する(ステップS5)。   The transmission frame management unit 12 that has received the notification from the reception buffer unit 13 checks whether or not a frame is currently being transmitted (step S4). When the frame is being transmitted from the transmission buffer unit 11 (step S4: Yes), the transmission frame management unit 12 acquires the total data amount (that is, the frame size) of the frame from the header information of the frame being transmitted. To do. In addition, the transmission frame management unit 12 monitors the frame being transmitted and acquires the transmitted data amount of the frame being transmitted. Further, the transmission frame management unit 12 calculates the untransmitted data amount of the frame being transmitted by subtracting the already transmitted data amount from the total data amount of the frame being transmitted (step S5).

次に、送信フレーム管理部12は、ステップS5で算出された未送信データ量と予め設定されたデータ量であるアボートデータ残量閾値とを比較し、未送信データ量が設定値よりも大きいか否かを判定する(ステップS6)。未送信データ量がアボートデータ残量閾値より大きい場合(ステップS6:Yes)には、送信フレーム管理部12は、送信バッファ部11に送信中であるフレームの送信停止指示を行う(ステップS7)。送信バッファ部11は、送信フレーム管理部12からの送信停止指示に応じて、送信中であるフレームの送信を停止する(ステップS8)。   Next, the transmission frame management unit 12 compares the untransmitted data amount calculated in step S5 with the abort data remaining amount threshold that is a preset data amount, and determines whether the untransmitted data amount is larger than the set value. It is determined whether or not (step S6). If the untransmitted data amount is larger than the abort data remaining amount threshold (step S6: Yes), the transmission frame management unit 12 instructs the transmission buffer unit 11 to stop transmission of the frame being transmitted (step S7). In response to the transmission stop instruction from the transmission frame management unit 12, the transmission buffer unit 11 stops transmission of the frame being transmitted (step S8).

続いて、送信フレーム管理部12は、ステップS8における送信が停止されたフレーム(すなわち、未送信データを含むフレーム)を、未送信データ量を減じたデータ量(すなわち送信済みデータ量)のみからなるフレームとして送信を完了させる。これにより、送信中であるフレームの送信がアボート処理される(ステップS9)。なお、このような不完全なフレームは、通信の相手側である通信装置20の受信フレーム管理部24において、イーサネット規格のフレームチェックシーケンスの異常フレームとして認識され、その後に廃棄される。更に、送信フレーム管理部11は、所定の送信停止時間をデータに含むポーズフレームを生成し、伝送路30を介して通信装置20に送信する(ステップS10)。通信の相手側である通信装置20の受信フレーム管理部24は、当該ポーズフレームを受信すると、受信したポーズフレーム内の情報(停止時間等)に基づいて送信フレーム管理部22にフレームの送信停止指示及び停止時間を指示する。ポーズフレームの送信後、送信フレーム管理部12は、送信バッファ部11にアボート処理したフレームの先頭データからの再送信を指示する(ステップS11)。送信バッファ部11は、上記再送信指示に基づき、送信を停止した時点において送信中であったフレームを送信フレーム管理部12に再度供給する(ステップS12)。その後、送信バッファ部11は、一時的に蓄積されたフレームの送信を続ける。   Subsequently, the transmission frame management unit 12 includes only the data amount (that is, the transmitted data amount) obtained by subtracting the untransmitted data amount from the frame in which transmission in step S8 is stopped (that is, the frame including untransmitted data). Complete transmission as a frame. Thereby, the transmission of the frame being transmitted is aborted (step S9). Note that such an incomplete frame is recognized as an abnormal frame in the Ethernet standard frame check sequence by the reception frame management unit 24 of the communication apparatus 20 which is the communication counterpart, and is then discarded. Furthermore, the transmission frame management unit 11 generates a pause frame that includes a predetermined transmission stop time in the data, and transmits the pause frame to the communication device 20 via the transmission path 30 (step S10). Upon receiving the pause frame, the reception frame management unit 24 of the communication device 20 that is the communication partner side instructs the transmission frame management unit 22 to stop transmission of the frame based on the information (stop time, etc.) in the received pause frame. And indicate stop time. After the transmission of the pause frame, the transmission frame management unit 12 instructs the transmission buffer unit 11 to retransmit from the top data of the aborted frame (step S11). Based on the retransmission instruction, the transmission buffer unit 11 supplies again to the transmission frame management unit 12 the frame that was being transmitted when transmission was stopped (step S12). Thereafter, the transmission buffer unit 11 continues to transmit the temporarily accumulated frames.

このように、送信中のフレームのアボート処理が実行され、ポーズフレームの送信が割り込むことにより、通信装置20からのフレームの送信が早期に停止される。   In this way, the abort process of the frame being transmitted is executed, and the transmission of the pause frame interrupts, whereby the transmission of the frame from the communication device 20 is stopped early.

一方、未送信データ量が設定値より小さい場合(ステップS6:No)には、送信フレーム管理部12は、送信中であるフレームの送信完了を待つ(ステップS13)。続いて、送信フレーム管理部12は、次に送信されるフレーム(次フレーム)の送信の停止を送信バッファ部11に指示する(ステップS14)。なお、送信フレーム管理部12は、フレーム送信中に次フレームの送信の停止を指示しても良い。送信バッファ部11は、送信フレーム管理部12からの送信停止指示に応じて、次フレームの送信を停止する(ステップS15)。続いて、送信フレーム管理部11は、所定の送信停止時間をデータに含むポーズフレームを生成し、伝送路30を介して通信装置20に送信する(ステップS16)。通信の相手側である通信装置20の受信フレーム管理部24は、当該ポーズフレームを受信すると、受信したポーズフレーム内の情報(停止時間等)に基づいて送信フレーム管理部22にフレームの送信停止指示及び停止時間を指示する。ポーズフレームの送信後、送信フレーム管理部12は、フレームの送信再開を送信バッファ11に指示する(ステップS17)。送信バッファ部11は、次フレームからフレームの送信を再開する(ステップS18)。   On the other hand, when the untransmitted data amount is smaller than the set value (step S6: No), the transmission frame management unit 12 waits for the completion of transmission of the frame being transmitted (step S13). Subsequently, the transmission frame management unit 12 instructs the transmission buffer unit 11 to stop transmission of a frame (next frame) to be transmitted next (step S14). The transmission frame management unit 12 may instruct the stop of transmission of the next frame during frame transmission. The transmission buffer unit 11 stops transmission of the next frame in response to the transmission stop instruction from the transmission frame management unit 12 (step S15). Subsequently, the transmission frame management unit 11 generates a pause frame that includes a predetermined transmission stop time in the data, and transmits the pause frame to the communication device 20 via the transmission path 30 (step S16). Upon receiving the pause frame, the reception frame management unit 24 of the communication device 20 that is the communication partner side instructs the transmission frame management unit 22 to stop transmission of the frame based on the information (stop time, etc.) in the received pause frame. And indicate stop time. After transmission of the pause frame, the transmission frame management unit 12 instructs the transmission buffer 11 to resume frame transmission (step S17). The transmission buffer unit 11 resumes frame transmission from the next frame (step S18).

このように、未送信データ量がアボートデータ残量閾値より小さい場合においてアボート処理を実施せず、フレーム送信完了後にポーズフレーム送信を行うことによって、異常フレームの送信及びフレームの再送信の回数が抑制される。これにより、フレームの再送信処理に伴うデータ転送レートの低下が抑制され、送信バッファ11のフレーム滞留が防止される。すなわち、上述した場合におけるアボート処理を行わないことは、送信バッファ11におけるオーバーフロー及びフレーム廃棄を避ける効果がある。   In this way, when the amount of untransmitted data is smaller than the abort data remaining amount threshold, the abort process is not performed, and the pause frame is transmitted after the frame transmission is completed, thereby suppressing the number of abnormal frame transmissions and frame retransmissions. Is done. As a result, a decrease in the data transfer rate associated with the frame retransmission process is suppressed, and frame retention in the transmission buffer 11 is prevented. That is, not performing the abort process in the above-described case has an effect of avoiding overflow and frame discard in the transmission buffer 11.

また、送信バッファ部11からフレームが送信中でない場合(ステップS4:No)には、送信フレーム管理部12は、送信バッファ部11に次に送信される次フレームの送信停止を指示する(ステップS14)。その後、送信バッファ部11による次フレームの送信停止(ステップS15)、送信フレーム管理部12によるポーズフレームの送信(ステップS16)、送信フレーム管理部12による次フレームの送信開始指示(ステップS17)、送信バッファ部11による次フレームの送信(ステップ18)が順次行われる。なお、ステップS14からステップS18までは上記した内容と同一であるため、その説明は省略する。   If the frame is not being transmitted from the transmission buffer unit 11 (step S4: No), the transmission frame management unit 12 instructs the transmission buffer unit 11 to stop transmission of the next frame to be transmitted next (step S14). ). Thereafter, the transmission buffer unit 11 stops transmission of the next frame (step S15), the transmission frame management unit 12 transmits a pause frame (step S16), the transmission frame management unit 12 instructs to start transmission of the next frame (step S17), and transmission. Transmission of the next frame (step 18) by the buffer unit 11 is sequentially performed. Steps S14 to S18 are the same as those described above, and a description thereof will be omitted.

以上のように、本発明のフロー制御方法によれば、通信相手である対向装置に対してデータ送信の停止を指示するフロー制御用データ信号の割込み送信の実施が可能か否かを通信装置から対向装置に対して送信中のPDUの未送信データ量に基づいて決定することにより、通信装置におけるオーバーフローを高精度に防止し、通信装置自体のコスト低減を図ることができる。   As described above, according to the flow control method of the present invention, it is determined from the communication device whether or not the interrupt transmission of the data signal for flow control instructing the opposite device as the communication partner to stop the data transmission can be performed. By determining based on the untransmitted data amount of the PDU being transmitted to the opposite device, overflow in the communication device can be prevented with high accuracy, and the cost of the communication device itself can be reduced.

なお、上述した実施例においては、通信装置間の通信に使用されるデータ転送の単位をフレームの場合として説明したが、通信装置間の通信に使用されるデータ転送は、フレーム以外のプロトコル・データ・ユニット(PDU:Protocol Data Unit)、例えば、パケット又はセグメントの転送単位で行なわれても良い。更に、上述した実施例においてはIEEE802.3x規格で規定されたイーサネットによる通信の場合を説明したが、本発明のフロー制御方法は、Puaseフレームのようなフロー制御用の専用データを送信することにより、通信相手の装置からのデータ送信を停止させるようフロー制御を実行する全ての通信方式及びその通信を行う装置に関して適用することができる。   In the above-described embodiments, the unit of data transfer used for communication between communication devices has been described as the case of a frame. However, data transfer used for communication between communication devices is not protocol data other than frames. A unit (PDU: Protocol Data Unit), for example, a packet or segment transfer unit may be used. Further, in the above-described embodiment, the case of communication by Ethernet defined by the IEEE 802.3x standard has been described. However, the flow control method of the present invention transmits dedicated data for flow control such as a PUASE frame. The present invention can be applied to all communication methods that execute flow control so as to stop data transmission from a communication partner device and devices that perform the communication.

従来のフロー制御方法におけるタイムチャート図である。It is a time chart figure in the conventional flow control method. 本発明の実施例であるフロー制御方法が適用される通信装置の構成を示すブロック図である。It is a block diagram which shows the structure of the communication apparatus with which the flow control method which is an Example of this invention is applied. 本発明の実施例であるフロー制御方法が適用される通信装置のシーケンス図である。It is a sequence diagram of the communication apparatus to which the flow control method which is an Example of this invention is applied.

符号の説明Explanation of symbols

10 通信装置
11 送信バッファ部
12 送信フレーム管理部
13 受信バッファ部
14 受信フレーム管理部
20 通信装置(対向装置)
21 送信バッファ部
22 送信フレーム管理部
23 受信バッファ部
24 受信フレーム管理部
30 伝送路
DESCRIPTION OF SYMBOLS 10 Communication apparatus 11 Transmission buffer part 12 Transmission frame management part 13 Reception buffer part 14 Reception frame management part 20 Communication apparatus (opposite apparatus)
21 Transmission buffer unit 22 Transmission frame management unit 23 Reception buffer unit 24 Reception frame management unit 30 Transmission path

Claims (6)

プロトコル・データ・ユニット(PDU)毎にデータの送受信を行うデータ通信において、通信装置の受信バッファ内に蓄積されたデータ量が所定閾値を超えた場合に、前記通信装置の通信相手である対向装置に対してデータ送信の停止を指示するフロー制御用データ信号を生成して前記対向装置に送信し、前記フロー制御用データ信号に基づいて所定の時間だけ前記対向装置から前記通信装置に対するデータ送信を停止するフロー制御方法であって、
前記通信装置から前記対向装置に対して送信中のPDUの未送信データ量に基づいて前記フロー制御用データ信号を前記対向装置に割込み送信するか否かを決定することを特徴とするフロー制御方法。
In data communication in which data is transmitted / received for each protocol data unit (PDU), when the amount of data stored in the reception buffer of the communication device exceeds a predetermined threshold, the opposite device that is a communication partner of the communication device A flow control data signal for instructing to stop data transmission is generated and transmitted to the opposite device, and data transmission from the opposite device to the communication device is performed for a predetermined time based on the flow control data signal. A flow control method for stopping,
A flow control method comprising: determining whether to interrupt-transmit the flow control data signal to the opposite device based on an untransmitted data amount of a PDU being transmitted from the communication device to the opposite device. .
前記送信中のPDUの未送信データ量と予め設定された閾データ量との比較結果に基づいて前記フロー制御用データ信号を前記対向装置に割込み送信するか否かを決定することを特徴とする請求項1に記載のフロー制御方法。   It is determined whether to interrupt-transmit the flow control data signal to the opposite device based on a comparison result between an untransmitted data amount of the PDU being transmitted and a preset threshold data amount. The flow control method according to claim 1. 前記閾データ量は、前記送信中のPDUの送信を待って前記フロー制御用データ信号が前記通信装置から前記対向装置に対して送信された場合に、前記フロー制御用データ信号の送信後に前記通信装置が前記対向装置から受信する最大のデータ量に基づいて決定されることを特徴とするフロー制御方法。   When the flow control data signal is transmitted from the communication device to the opposite device after waiting for transmission of the PDU being transmitted, the threshold data amount is determined after the flow control data signal is transmitted. A flow control method, wherein the apparatus is determined based on a maximum amount of data received from the opposite apparatus. 前記フロー制御用データ信号の割込み送信を行なう場合に、前記送信中のPDUの送信がアボート処理されることを特徴とする請求項1乃至3のいずれか1に記載のフロー制御方法。   4. The flow control method according to claim 1, wherein when an interrupt transmission of the data signal for flow control is performed, the transmission of the PDU being transmitted is aborted. 5. アボート処理された送信における前記PDUが、前記フロー制御用データ信号の送信後に再送信されることを特徴とする請求項4に記載のフロー制御方法。   5. The flow control method according to claim 4, wherein the PDU in the aborted transmission is retransmitted after the flow control data signal is transmitted. 前記通信装置は、前記フロー制御用データ信号送信後に、前記対向装置からのデータ送信を再開させるための送信再開指示用データ信号を生成して前記対向装置に送信することを特徴とする請求項1乃至5のいずれか1に記載のフロー制御方法。   The communication device generates a transmission resumption instruction data signal for resuming data transmission from the opposite device after transmitting the flow control data signal, and transmits the data signal to the opposite device. 6. The flow control method according to any one of 1 to 5.
JP2008229590A 2008-09-08 2008-09-08 Flow control method Pending JP2010063070A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2008229590A JP2010063070A (en) 2008-09-08 2008-09-08 Flow control method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2008229590A JP2010063070A (en) 2008-09-08 2008-09-08 Flow control method

Publications (1)

Publication Number Publication Date
JP2010063070A true JP2010063070A (en) 2010-03-18

Family

ID=42189341

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2008229590A Pending JP2010063070A (en) 2008-09-08 2008-09-08 Flow control method

Country Status (1)

Country Link
JP (1) JP2010063070A (en)

Similar Documents

Publication Publication Date Title
US9030936B2 (en) Flow control with reduced buffer usage for network devices
WO2015162734A1 (en) Relay device and data transfer method
JP2007089174A (en) Method and device for improving signal transmission rate in wireless communication system
JPH1198219A (en) Communication method having communication protocol for operating inter-layer flow control and data communication terminal
JP5625748B2 (en) COMMUNICATION DEVICE, COMMUNICATION SYSTEM, PROGRAM, AND COMMUNICATION METHOD
EP4156766A1 (en) Data packet sending method and apparatus
JP4700290B2 (en) Method for flow control in a communication system
JP2010109490A (en) Transmission apparatus, transmission system and transmission method
US8838782B2 (en) Network protocol processing system and network protocol processing method
US9178790B2 (en) Methods, systems, and computer readable media for controlling Tx and Rx throughput over TCP
US11405148B2 (en) Communication system, communication device, method, and recording medium of program
US9137703B2 (en) Technique for handling a data packet stream
JP2006279188A (en) Transmission controller conducting priority control, communication controller, communication system, communication network and transmission method
US8532111B2 (en) Transmission apparatus, transmission method, and program
JP2010063070A (en) Flow control method
JP6223942B2 (en) Wireless communication apparatus, wireless communication program, and method capable of changing aggregation amount according to wireless communication environment
JP6417097B2 (en) Packet transmission equipment
JP2006067038A (en) Communication network, transmission controller, emergency frame processing method to be used for the same and its program
WO2023119511A1 (en) Communication device, communication system, and communication method
WO2017054473A1 (en) Method, sdn controller and network element for use in processing messages
JP2006087010A (en) Communication path control apparatus and network system employing the same
WO2023119512A1 (en) Relay device, communication system, and relay method
TWI649991B (en) Data communication device, data communication control method and program
JPH09233119A (en) Communication flow control method in network and communication equipment
JP5418641B2 (en) COMMUNICATION DEVICE, FLOW CONTROL METHOD USED FOR THE SAME, AND PROGRAM THEREOF