JPH03274847A - Communication control system - Google Patents
Communication control systemInfo
- Publication number
- JPH03274847A JPH03274847A JP2074248A JP7424890A JPH03274847A JP H03274847 A JPH03274847 A JP H03274847A JP 2074248 A JP2074248 A JP 2074248A JP 7424890 A JP7424890 A JP 7424890A JP H03274847 A JPH03274847 A JP H03274847A
- Authority
- JP
- Japan
- Prior art keywords
- data
- transmission
- layer
- buffers
- buffer
- 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
Links
- 238000004891 communication Methods 0.000 title claims description 40
- 230000005540 biological transmission Effects 0.000 claims abstract description 115
- 239000000872 buffer Substances 0.000 claims abstract description 99
- 238000012545 processing Methods 0.000 claims abstract description 92
- 238000000034 method Methods 0.000 claims description 29
- 238000013500 data storage Methods 0.000 claims description 4
- 238000010586 diagram Methods 0.000 description 13
- 230000004044 response Effects 0.000 description 8
- 230000000694 effects Effects 0.000 description 3
- 238000005516 engineering process Methods 0.000 description 2
- 238000005192 partition Methods 0.000 description 2
- 238000007796 conventional method Methods 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
Landscapes
- Computer And Data Communications (AREA)
- Communication Control (AREA)
Abstract
Description
【発明の詳細な説明】
〔目 次]
概要
産業上の利用分野
従来の技術
発明が解決しようとする課題
課題を解決するための手段
作用
実施例
■、実施例と第1図との対応関係
■、実施例の構成
■、実施例の動作
■、実施例のまとめ
■0発明の変形態様
発明の効果
〔概 要〕
通信手順が複数の階層に階層化されているデータ伝送シ
ステムの通信制御方式に関し、各階層における送信デー
タの分割処理に要する時間を短縮することを目的とし、
それぞれ異なる階層に対応し、上位の階層から供給され
る指定情報で示される送信データを各階層でのデータ単
位ごとに分割し、これらのデータ単位のそれぞれを示す
指定情報を下位の階層に供給する複数の送信処理手段と
、複数の階層のそれぞれに対応するデータ単位長が格納
されている格納手段と、相互に連結されており、それぞ
れ所定の長さのデータを格納する複数のバッファからな
る送信データ格納手段と、格納手段に格納されたデータ
単位長の最小値に基づいて、供給された送信データを複
数のブロックに分割し、これらのブロックのそれぞれを
複数のバッファのそれぞれに格納するとともに、この一
連のバッファを示す指定情報を最も上位の階層に対応す
る送信処理手段に供給する送信制御手段とを備え、複数
の送信処理手段のそれぞれが、供給された指定情報で示
される一連のバッファの相互間の連結を解除して、一連
のバッファに格納された送信データを複数の送信データ
に分割するように構成する。[Detailed Description of the Invention] [Table of Contents] Overview Industrial Field of Application Conventional Technology Problems to be Solved by the Invention Examples of Means and Effects for Solving the Problems ■ Correspondence between the Examples and FIG. 1 ■ , Structure of Examples ■, Operation of Examples ■, Summary of Examples ■ 0 Variations of the Invention Effects of the Invention [Summary] Concerning the communication control method of a data transmission system in which communication procedures are layered in multiple layers. , with the aim of reducing the time required for dividing the transmission data in each layer, corresponds to each different layer, and divides the transmission data indicated by the specified information supplied from the upper layer into data units in each layer. A plurality of transmission processing means that divide the data and supply specification information indicating each of these data units to a lower layer, and a storage means that stores data unit lengths corresponding to each of the plurality of layers, and are interconnected. The supplied transmission data is stored in a plurality of blocks based on the minimum value of the data unit length stored in the storage means. and a transmission control means for storing each of these blocks in each of a plurality of buffers, and supplying specification information indicating this series of buffers to a transmission processing means corresponding to the highest layer, Each of the transmission processing means is configured to disconnect the series of buffers indicated by the supplied designation information and divide the transmission data stored in the series of buffers into a plurality of transmission data. .
〔産業上の利用分野]
本発明は、データ伝送システムの通信制御方式に関し、
特に、例えば開放型システム相互接続(OSI)システ
ムなどのように、通信を行なうための手順が複数の階層
に階層化されているデータ伝送システムの通信制御方式
に関するものである。[Industrial Application Field] The present invention relates to a communication control method for a data transmission system.
In particular, the present invention relates to a communication control method for a data transmission system in which communication procedures are layered in a plurality of layers, such as an open system interconnection (OSI) system.
例えば、O3Iシステムにおいては、通信を行なうため
の手順が7つの層に階層化されており、それぞれの層に
おいて1つの電文として扱えるデータ長が異なっている
。このため、各層において、上位層からのデータの分割
や結合などの処理を行ない、最も通信処理を行なうのに
容易な電文長とするようになっている。For example, in the O3I system, the procedure for communication is hierarchically divided into seven layers, and each layer has a different data length that can be handled as one message. For this reason, in each layer, processing such as division and combination of data from the upper layer is performed to obtain a message length that is easiest for communication processing.
通常、各層は下位の層に対して、1つないし複数のバッ
ファを指定して、これらのバッファに格納されたデータ
についての送信依頼を行なうようになっている。Normally, each layer specifies one or more buffers and requests the lower layer to transmit data stored in these buffers.
例えば、第8図に示すように、第N層が第N−1層に対
して、1000バイトのデータが格納されているバッフ
ァlを指定して送信依頼を行なう場合について説明する
。For example, as shown in FIG. 8, a case will be described in which the Nth layer requests the N-1th layer to transmit by specifying a buffer l in which 1000 bytes of data is stored.
このとき、第N−1層における最大データ長が512バ
イトであれば、第N−1層においては上述したバッファ
1に格納されたデータを1つの電文として扱うことがで
きない。この場合は、第N1層において、第8図に斜線
を付して示すように、上述したバッファ1に格納された
データの一部を別のバッファ2にコピーしてバッファl
に格納されたデータの分割処理を行ない、これらのバッ
ファ1,2のそれぞれを指定して、第N−2層に対する
送信依頼を行なうようになっている。At this time, if the maximum data length in the N-1 layer is 512 bytes, the data stored in the buffer 1 described above cannot be handled as one message in the N-1 layer. In this case, in the N1 layer, a part of the data stored in the above-mentioned buffer 1 is copied to another buffer 2, as shown with diagonal lines in FIG.
The data stored in the buffers 1 and 2 are designated respectively and a transmission request is made to the N-2 layer.
また、この第N−2層における最大データ長が例えば2
56バイトであれば、上述した第N−1層における分割
処理と同様にして、上述したバッファ1,2のそれぞれ
に格納されたデータの一部がバッファ3,4のそれぞれ
にコピーされ、バッファ1.2についての送信依頼がそ
れぞれ2つずつに分割される。その後、これらのバッフ
ァ1゜3.2.4を順次に指定して、第N−3層に対す
る送信依頼が行なわれる。Also, the maximum data length in this N-2 layer is, for example, 2
If it is 56 bytes, part of the data stored in each of buffers 1 and 2 is copied to each of buffers 3 and 4 in the same way as the division process in the N-1 layer described above, and Each transmission request for .2 is divided into two. Thereafter, a transmission request is made to the N-3 layer by sequentially specifying these buffers 1.3.2.4.
[発明が解決しようとする課題]
ところで、上述した従来方式にあっては、各層において
送信データの分割処理を行なう際に、送信依頼で指定さ
れたバッファに格納されたデータの一部が別のバッファ
にコピーされている。このようなデータのコピーを行な
っているために、分割処理に時間がかかり、データの伝
送効率を低下させているという問題点があった。[Problems to be Solved by the Invention] By the way, in the conventional method described above, when dividing the transmission data in each layer, a part of the data stored in the buffer specified in the transmission request is transferred to another buffer. being copied to the buffer. Since such data copying is performed, there is a problem in that the division process takes time and data transmission efficiency is reduced.
本発明は、このような点にかんがみて創作されたもので
あり、各層において送信データのコピーを行なうことな
く送信データの分割を行なうようにした通信制御方式を
提供することを目的としている。The present invention was created in view of these points, and an object of the present invention is to provide a communication control method that divides transmission data without copying the transmission data in each layer.
第1図は、本発明の通信制御方式の原理ブロック図であ
る。FIG. 1 is a principle block diagram of the communication control system of the present invention.
図において、通信手順が複数の階層に階層化されている
データ伝送システムの通信制御方式における複数の送信
処理手段111は、それぞれ異なる階層に対応し、上位
の階層から供給される指定情報で示される送信データを
各階層に対応するデータ単位ごとに分割し、これらのデ
ータ単位のそれぞれを示す指定情報を下位の階層に供給
する。In the figure, a plurality of transmission processing means 111 in a communication control method of a data transmission system in which communication procedures are hierarchized into a plurality of hierarchies correspond to different hierarchies, and are indicated by designation information supplied from an upper layer. The transmission data is divided into data units corresponding to each layer, and designation information indicating each of these data units is supplied to the lower layer.
格納手段121は、複数の階層のそれぞれに対応するデ
ータ単位の大きさを示すデータ単位長が格納されている
。The storage unit 121 stores a data unit length indicating the size of a data unit corresponding to each of a plurality of hierarchies.
送信データ格納手段130は、相互に連結されており、
それぞれ所定の長さのデータを格納する複数のバッファ
131からなる。The transmission data storage means 130 are interconnected,
It consists of a plurality of buffers 131 each storing data of a predetermined length.
送信制御手段141は、格納手段121に格納されたデ
ータ単位長の最小値に基づいて、供給された送信データ
を複数のブロックに分割し、これらのブロックのそれぞ
れを複数のバッファ131のそれぞれに格納するととも
に、送信データが格納された一連のバッファ131を示
す指定情報を最も上位の階層に対応する送信処理手段1
11に供給する。The transmission control means 141 divides the supplied transmission data into a plurality of blocks based on the minimum value of the data unit length stored in the storage means 121, and stores each of these blocks in each of the plurality of buffers 131. At the same time, specifying information indicating a series of buffers 131 in which transmission data is stored is sent to the transmission processing means 1 corresponding to the highest layer.
11.
全体として、複数の送信処理手段111のそれぞれが、
供給された指定情報で示される一連のバッファ131の
相互間の連結を解除して、一連のバッファ131に格納
された送信データを複数の送信データに分割するように
構成されている。Overall, each of the plurality of transmission processing means 111:
It is configured to disconnect the series of buffers 131 indicated by the supplied designation information and divide the transmission data stored in the series of buffers 131 into a plurality of transmission data.
複数の送信処理手段111のそれぞれは、データ伝送シ
ステムのそれぞれ異なる階層に対応しており、これらの
階層のそれぞれに対応するデータ単位の大きさを示すデ
ータ単位長が、格納手段121に格納されている。この
格納手段121に格納されたデータ単位長の最小値に基
づいて、送信制御手段141により、供給された送信デ
ータが複数のブロックに分割され、これらのブロックの
それぞれは、相互に連結された複数のバッファ131の
それぞれに格納される。また、上述した送信制御手段1
41により、上述した送信データが格納された一連のバ
ッファ131を示す指定情報が、最も上位の階層に対応
する送信処理手段111に上位の階層からの指定情報と
して供給される。Each of the plurality of transmission processing means 111 corresponds to a different hierarchy of the data transmission system, and a data unit length indicating the size of a data unit corresponding to each of these hierarchies is stored in the storage means 121. There is. Based on the minimum value of the data unit length stored in the storage means 121, the supplied transmission data is divided into a plurality of blocks by the transmission control means 141, and each of these blocks is divided into a plurality of interconnected blocks. are stored in each of the buffers 131. Further, the above-mentioned transmission control means 1
41, designation information indicating the series of buffers 131 in which the above-mentioned transmission data is stored is supplied to the transmission processing means 111 corresponding to the highest hierarchy as designation information from the upper hierarchy.
この送信処理手段111により、上位の階層から供給さ
れた指定情報で示される一連のバッファ131の相互間
の連結を解除することにより、上述した一連のバッファ
131に格納された送信データが、この送信処理手段1
11に対応するデータ単位ごとに分割され、これらのデ
ータ単位のそれぞれを示す指定情報が下位の階層に供給
される。This transmission processing means 111 releases the connection between the series of buffers 131 indicated by the specification information supplied from the upper layer, so that the transmission data stored in the series of buffers 131 described above is Processing means 1
11, and designation information indicating each of these data units is supplied to the lower layer.
例えば、上述した送信制御手段141により、連結され
た4つのバッファ131を示す指定情報が送信処理手段
111に供給された場合に、送信処理手段111が、上
述した4つのバッファ131の中の2番目のバッファ1
31と3番目のバッファ131との間の連結を解除する
ことにより、上述した送信データを2つに分割すること
ができる。For example, when the above-mentioned transmission control means 141 supplies the transmission processing means 111 with designation information indicating four connected buffers 131, the transmission processing means 111 selects the second of the four buffers 131. buffer 1 of
31 and the third buffer 131, the above-mentioned transmission data can be divided into two.
本発明にあっては、送信データが格納された一連のバッ
ファ131の相互間の連結を解除することにより、送信
データの分割が行なわれる。従って、送信データのコピ
ーを行なうことなく、送信データの分割処理を行なうこ
とが可能となり、送信データの分割処理に要する時間を
短縮することができる。In the present invention, the transmission data is divided by disconnecting the series of buffers 131 in which the transmission data is stored. Therefore, it is possible to perform division processing of transmission data without copying the transmission data, and the time required for division processing of transmission data can be shortened.
以下、図面に基づいて本発明の実施例について詳細に説
明する。Hereinafter, embodiments of the present invention will be described in detail based on the drawings.
第2図は、本発明の一実施例における通信制御方式を適
用したデータ伝送システムの構成を示す。FIG. 2 shows the configuration of a data transmission system to which a communication control method according to an embodiment of the present invention is applied.
第3図は、実施例による通信制御方式の送信処理の流れ
を示す図を示す。FIG. 3 is a diagram showing the flow of transmission processing of the communication control method according to the embodiment.
■ と 1 との
ここで、本発明の実施例と第1図との対応関係を示して
おく。Here, the correspondence between the embodiment of the present invention and FIG. 1 will be shown.
送信処理手段111は、通信アダプタ210の通信処理
部312のトランスポート層制御部313、ネットワー
ク層制御部314.データリンク層制御部315.物理
層制御部316に相当する。The transmission processing unit 111 includes a transport layer control unit 313, a network layer control unit 314 . Data link layer control unit 315. It corresponds to the physical layer control unit 316.
格納手段121は、ホストコンピュータ201のアダプ
タ制御部301内のデータ長テーブル331に相当する
。The storage means 121 corresponds to the data length table 331 in the adapter control unit 301 of the host computer 201.
送信データ格納手段130は、メモリ212のバッファ
領域215に相当する。The transmission data storage means 130 corresponds to the buffer area 215 of the memory 212.
バッファ131は、メモリ212のバッファ領域215
内の各バッファに相当する。The buffer 131 is a buffer area 215 of the memory 212.
corresponds to each buffer within.
送信制御手段141は、アダプタ制御部301に相当す
る。The transmission control means 141 corresponds to the adapter control section 301.
以上のような対応関係があるものとして、以下本発明の
実施例について説明する。Examples of the present invention will be described below assuming that the correspondence relationship as described above exists.
1−j(識別1u動葭
第2図において、201はホストコンピュータ(ホスト
)を、202はホスト201の中央処理装置(CPU)
を、203はホスト201のメモリを示しており、ホス
ト201は通信アダプタ210を介して回線204に接
続されており、回線204を介してデータの伝送を行な
うようになっている。また、このデータの伝送の際に、
通信アダプタ210により、O3Iにおけるトランスポ
ート層以下の各層の手順の制御が行なわれるようになっ
ている。1-j (Identification 1u motion diagram) In FIG. 2, 201 is the host computer (host), and 202 is the central processing unit (CPU) of the host 201.
203 indicates a memory of the host 201, which is connected to a line 204 via a communication adapter 210, and data is transmitted via the line 204. Additionally, when transmitting this data,
The communication adapter 210 controls the procedures of each layer below the transport layer in O3I.
通信アダプタ210は、回線204を介するデータ伝送
の制御を行なう回線制御回路211と、プログラムやデ
ータを格納するメモリ212と、各部の制御を行なうC
PU213とを備えて構成されている。The communication adapter 210 includes a line control circuit 211 that controls data transmission via the line 204, a memory 212 that stores programs and data, and a C that controls each part.
PU213.
上述したメモリ212は、CPU213とホスト201
のCPU202との両方からアクセスできるようになっ
ており、ホスト201と通信アダプタ210との間のデ
ータの授受を媒介する共通会話領域214と、それぞれ
所定の大きさ(例えば、1024バイト)を有する複数
のバッファからなるバッファ領域215とから構成され
ている。The above-mentioned memory 212 is connected to the CPU 213 and the host 201.
A common conversation area 214 that can be accessed from both the CPU 202 of the host 201 and the communication adapter 210, and a common conversation area 214 that mediates the exchange of data between the host 201 and the communication adapter 210; The buffer area 215 is made up of buffers.
また、第3図において、301はアダプタ制御部を示し
ており、このアダプタ制御部301は、アプリケージタ
ンプログラムからの指示に応じて、上述した通信アダプ
タ210への割り込み信号を出力するとともに、通信ア
ダプタ210に対する命令を上述したメモリ212の共
通会話領域214に格納するようになっている。Further, in FIG. 3, 301 indicates an adapter control unit, and this adapter control unit 301 outputs an interrupt signal to the communication adapter 210 described above according to instructions from the application program, and also controls the communication adapter 210. 210 is stored in the common conversation area 214 of the memory 212 mentioned above.
また、図において、311は上述した割り込み信号に応
して、共通会話領域214に格納された命令を解析して
割込処理を行なう割込処理部を、312は割込処理部3
11からの指示に応して通信処理を行なう通信処理部を
示している。Further, in the figure, reference numeral 311 denotes an interrupt processing unit that analyzes instructions stored in the common conversation area 214 and performs interrupt processing in response to the above-mentioned interrupt signal, and 312 indicates an interrupt processing unit 3.
11 shows a communication processing unit that performs communication processing in response to instructions from 11.
この通信処理部312は、トランスポート層の手順に従
って通信の制御を行なうトランスポート層制御部313
と、ネットワーク層の手順に従って通信の制御を行なう
ネットワーク層制御部314と、データリンク層の手順
に従って通信の制御を行なうデータリンク層制御部31
5と、物理層の手順に従って回線制御回路211の制御
を行なう物理層制御部316とを備えて構成されている
。This communication processing unit 312 includes a transport layer control unit 313 that controls communication according to transport layer procedures.
, a network layer control section 314 that controls communication according to the procedures of the network layer, and a data link layer control section 31 that controls communication according to the procedures of the data link layer.
5, and a physical layer control section 316 that controls the line control circuit 211 according to the physical layer procedure.
また、上述した通信処理部312の各部は、例えば、回
線204を介して送出したコネクション要求に対する応
答に、各層において1つの電文として扱うことができる
データ長(以下、各層の最大データ長と称する)と各層
において付加されるヘッダの長さを順次に付加するよう
になっており、この応答は、上述した共通会話領域21
4を介して、アダプタ制御部301に通知されるように
なっている。Furthermore, each part of the communication processing unit 312 described above responds to a connection request sent via the line 204 with a data length that can be handled as one message in each layer (hereinafter referred to as the maximum data length of each layer). and the length of the header added in each layer are added sequentially, and this response is sent to the common conversation area 21 mentioned above.
4, the adapter control unit 301 is notified.
このアダプタ制御部301は、上述した応答に付加され
た各層の最大データ長およびヘッダ長を内部に設けたデ
ータ長テーブル331に格納するようになっている。This adapter control unit 301 stores the maximum data length and header length of each layer added to the above-mentioned response in a data length table 331 provided therein.
また、アダプタ制御部301は、アプリケーションプロ
グラムからの送信依頼に応して、このデータ長テーブル
331に格納した各層の最大データ長に基づいて、トラ
ンスポート層以下の各層における送信データの分割処理
を予想し、予想される分割数(以下、予想分割数と称す
る)分のバッファを上述したメモリ212のバッファ領
域215から獲得するようになっている。また、アダプ
タ制御部301は、上述した送信依頼で指定されたメモ
リ203の領域に格納された送信データを上述した予想
分割数に応して複数のブロックに分割し、獲得したバッ
ファのそれぞれに各ブロックの送信データをコピーする
ようになっている。In addition, in response to a transmission request from an application program, the adapter control unit 301 predicts division processing of transmission data in each layer below the transport layer based on the maximum data length of each layer stored in this data length table 331. However, buffers corresponding to the expected number of divisions (hereinafter referred to as the expected number of divisions) are acquired from the buffer area 215 of the memory 212 described above. Furthermore, the adapter control unit 301 divides the transmission data stored in the area of the memory 203 specified in the transmission request described above into a plurality of blocks according to the expected number of divisions described above, and stores each block in each of the acquired buffers. It is designed to copy the transmitted data of the block.
このとき、各層において付加されるヘッダを考慮して、
各バッファについて送信データのコピーを開始する位置
(オフセット)を決定するようになっている。At this time, considering the headers added at each layer,
The position (offset) at which to start copying the transmission data is determined for each buffer.
皇−11四〇輝紅生
以下、実施例による通信制御方式の動作をアダプタ制御
部301の動作と通信処理部312の各層における分割
動作とに分けて説明する。The operation of the communication control method according to the embodiment will be explained below by dividing it into the operation of the adapter control section 301 and the divided operation in each layer of the communication processing section 312.
ア ブ の
第4図に、実施例によるアダプタ制御部301の分割予
想処理動作を表す流れ図を示す。FIG. 4 shows a flowchart representing the division prediction processing operation of the adapter control unit 301 according to the embodiment.
まず、アダプタ制御部301は、自身の作業領域内にポ
インタ部(後述する)とオフセット部とデータ長部とか
らなる分割処理テーブル(第1表参照)を設け、オフセ
ット部に初期値rQJを、データ長部に送信依頼で指定
された送信データ長Luを設定する(ステップ401)
。First, the adapter control unit 301 provides a division processing table (see Table 1) consisting of a pointer section (described later), an offset section, and a data length section in its own work area, and sets an initial value rQJ to the offset section. Set the transmission data length Lu specified in the transmission request in the data length section (step 401)
.
第1表
ここで、以下に述べる処理によって、複数の分割処理テ
ーブルが設けられた場合に、上述したポインタ部に次の
分割処理テーブルを示すポインタが設定される。また、
第4図において、記号D、は第1層(i−1〜N)にお
ける最大データ長を、記号H1は第1層(i=1〜N)
におけるヘッダ長を、記号dはオフセットを示す変数で
ある。また、第N層はトランスポート層に、第N−1層
はネットワーク層に相当しており、以下に述べる処理を
第1層の物理層から順次に、第N層のトランスポート層
まで実行するようになっている。Table 1 Here, when a plurality of divided processing tables are provided by the processing described below, a pointer indicating the next divided processing table is set in the above-mentioned pointer section. Also,
In FIG. 4, symbol D indicates the maximum data length in the first layer (i-1 to N), and symbol H1 indicates the maximum data length in the first layer (i=1 to N).
The symbol d is a variable indicating the offset. Also, the Nth layer corresponds to the transport layer, and the N-1st layer corresponds to the network layer, and the processes described below are executed sequentially from the first physical layer to the Nth transport layer. It looks like this.
以下、第1層についての処理を説明する。The processing for the first layer will be explained below.
まず、上述したデータ長テーブル331から第1層のヘ
ッダ長H8と第1層の最大データ長り。First, the header length H8 of the first layer and the maximum data length of the first layer are obtained from the data length table 331 described above.
および第i+1層の最大データ長D i+1 とを検索
しくステップ402)、上述した変数dに第1層のヘッ
ダ長H1を加える(ステップ403)。また、ステップ
402で読み出したヘッダ長H□と最大データ長りユ、
D6+1 とを下式(1)に代入し、この式(1)が成
立するか否かによって、第i+1層からのデータを第1
層において分割する必要があるか否かを判定する(ステ
ップ404)。and the maximum data length D i+1 of the i+1st layer (step 402), and the header length H1 of the first layer is added to the above-mentioned variable d (step 403). In addition, the header length H□ read in step 402 and the maximum data length
D6+1 into the following equation (1), and depending on whether this equation (1) holds true, the data from the i+1th layer is
It is determined whether it is necessary to divide the layer into layers (step 404).
D、。、<D、+Hi ・・・ (1)式(1
)が成立する場合は、上述したステップ404における
否定判定となり、このステップ404における肯定判定
となるまで、ステップ402〜404が繰り返され、各
層のヘッダ長H3が変数dに順次に累積されるようにな
っている。D. , <D, +Hi... (1) Formula (1
) holds, the above-mentioned step 404 becomes a negative decision, and steps 402 to 404 are repeated until an affirmative decision is made in this step 404, so that the header length H3 of each layer is sequentially accumulated in the variable d. It has become.
一方、例えば、トランスポート層における最大データ長
り、が512バイトで、ネットワーク層における最大デ
ータ長DH−1が256バイトである場合は、ネットワ
ーク層に対応する第N−1層についての処理の際に、上
述したステップ404における肯定判定となる。On the other hand, for example, if the maximum data length in the transport layer is 512 bytes and the maximum data length DH-1 in the network layer is 256 bytes, then when processing the N-1st layer corresponding to the network layer, Then, an affirmative determination is made in step 404 described above.
この場合は、上述した分割処理テーブルのデータ長部に
設定された送信データ長Luを最大データ長DH−1で
割った数だけ、ステップ401で設けた分割処理テーブ
ルとは別に分割処理テーブルを設ける(ステップ405
)。例えば、送信データ長Luが1000バイトで第1
層(例えばネットワーク層)における最大データ長が2
56バイトであれば、このステップ405において、新
たに3つの分割処理テーブルが設けられる。以下、この
ステップ405で新たに設けられた分割処理テーブルの
元になった分割処理テーブルを分割元の分割処理テーブ
ルと称する。このとき、上述した分割元の分割処理テー
ブルと新たに設けられた分割処理テーブルとのそれぞれ
のオフセット部に上述した変数dの値を設定し、また、
データ長部にネットワーク層における最大データ長DN
−□ (例えば256バイト)を設定する。In this case, separate processing tables are provided in addition to the partition processing table provided in step 401 by the number obtained by dividing the transmission data length Lu set in the data length section of the above-mentioned partition processing table by the maximum data length DH-1. (Step 405
). For example, if the transmission data length Lu is 1000 bytes, the first
If the maximum data length in a layer (e.g. network layer) is 2
If it is 56 bytes, three new divided processing tables are provided in step 405. Hereinafter, the divided processing table that is the basis of the newly provided divided processing table in step 405 will be referred to as the original divided processing table. At this time, the value of the variable d described above is set in the offset section of each of the division processing table of the division source and the newly provided division processing table, and
Maximum data length DN in the network layer in the data length section
-□ (for example, 256 bytes).
また、これらの分割処理テーブルのそれぞれのポインタ
部に順次に次の分割処理テーブルを示すポインタを設定
し、上述した分割元の分割処理テーブルを先頭として、
これらの分割処理テーブルのチエインを形成する(ステ
ップ406)。In addition, pointers indicating the next divided processing table are set in the pointer section of each of these divided processing tables in sequence, and the above-mentioned divided processing table of the division source is set as the first one.
A chain of these divided processing tables is formed (step 406).
次に、他の分割元の分割処理テーブルがあるか否かが判
定され(ステップ407)、肯定判定の場合は、他の分
割元の分割処理テーブルについて、上述したステップ4
05〜ステツプ406の処理が行なわれる。Next, it is determined whether or not there is a split processing table for another split source (step 407), and if the determination is affirmative, the split processing table for the other split source is determined in step 4 described above.
Processes from step 05 to step 406 are performed.
一方、上述したように、第N−2層において、初めてス
テップ403における否定判定となった場合は、他の分
割元の分割処理テーブルはないので、上述したステップ
407における否定判定となる。この場合は、ステップ
408において、第N層までの全層についての処理が終
了したか否かが判定され、肯定判定の場合は分割予想処
理を終了し、このステップ408における否定判定の場
合は、上述した分割処理テーブルのチエインの先頭とな
っている分割処理テーブルからl@次に、上述したステ
ップ402〜ステツプ408の処理が行なわれる。On the other hand, as described above, when a negative determination is made in step 403 for the first time in the N-2th layer, there is no other division processing table for the division source, so a negative determination is made in step 407 described above. In this case, in step 408, it is determined whether the processing for all layers up to the Nth layer has been completed, and if the determination is affirmative, the division prediction processing is terminated, and if the determination is negative in this step 408, Starting from the division processing table that is the head of the chain of division processing tables described above, the processing of steps 402 to 408 described above is performed next.
上述したステップ402〜ステツプ408の処理を第N
層までの全ての層について行なうことにより、第N層以
下の各層の最大データ長に基づいて、各層において行な
われる分割処理を予想し、送信データを最も短い最大デ
ータ長に対応する大きさのブロックに分割した場合のブ
ロックの数を上述した分割処理テーブルの数として求め
ることができる。The processing from step 402 to step 408 described above is performed at the Nth step.
By performing this on all layers up to Layer N, the division processing to be performed in each layer is predicted based on the maximum data length of each layer from the Nth layer onwards, and the transmission data is divided into blocks of the size corresponding to the shortest maximum data length. The number of blocks when divided into two can be determined as the number of division processing tables mentioned above.
アダプタ制御部301は、上述した分割処理テーブルの
それぞれについて、通信アダプタ210のメモリ212
のバッファ領域215からバッファを獲得し、これらの
分割処理テーブルのそれぞれに基づいて、対応するバッ
ファに送信データのコピーを行なう。The adapter control unit 301 stores information in the memory 212 of the communication adapter 210 for each of the above-mentioned split processing tables.
A buffer is acquired from the buffer area 215 of , and the transmission data is copied to the corresponding buffer based on each of these division processing tables.
例えば、上述した分割予想処理動作で4つの分割処理テ
ーブルが設けられ、これらの分割処理テーブルのオフセ
ット部に6バイトが、データ長部に250バイトが設定
されている場合は、アダプタ制御部301は、1000
バイトの送信データをそれぞれ250バイトの4つのブ
ロックに分割し、これらのブロックに対応して4つのバ
ッファ(例えば、バッファの、■、■、■)を獲得する
。For example, if four division processing tables are provided in the division prediction processing operation described above, and 6 bytes are set in the offset section and 250 bytes are set in the data length section of these division processing tables, the adapter control unit 301 , 1000
Bytes of transmission data are divided into four blocks of 250 bytes each, and four buffers (for example, buffers ■, ■, ■) are acquired corresponding to these blocks.
また、第5図に示すように、これらの各ブロック(図に
おいて、記号B、、B、、B、、B、で示す)を各バッ
ファのオフセット部で示された位置からコピーする(図
において、斜線を付して示す)。In addition, as shown in Figure 5, each of these blocks (indicated by symbols B, , B, , B, , B, in the diagram) is copied from the position indicated by the offset part of each buffer (in the diagram, , shown with diagonal lines).
また、アダプタ制御部301は、送信データをコピーし
た複数のバッファのそれぞれに備えられている制御情報
領域に、これらのバッファの前後関係を示すポインタを
設定し、これらのバッファからなるチエインを形成する
。例えば、上述したようにして獲得された4つのバッフ
ァのそれぞれの先頭アドレスをA、、A2.A3.A、
とすれば、上述したチエインの先頭のバッファの制御情
報領域に、データ長などとともに次のバッファを示すポ
インタとしてアドレスA2を格納し、同様に、2番目の
バッファの制御情報領域にポインタとしてアドレスA3
を、3番目のバッファの制御情報領域にアドレスA4を
格納すればよい。Further, the adapter control unit 301 sets pointers indicating the sequential relationship of these buffers in the control information area provided in each of the plurality of buffers into which the transmission data has been copied, and forms a chain consisting of these buffers. . For example, the starting addresses of the four buffers acquired as described above are A, , A2 . A3. A,
Then, address A2 is stored as a pointer indicating the next buffer together with the data length etc. in the control information area of the first buffer in the chain, and address A3 is similarly stored as a pointer in the control information area of the second buffer.
The address A4 may be stored in the control information area of the third buffer.
アダプタ制御部301は、上述した処理によって形成さ
れたチエインについての送信依頼を示す命令を通信アダ
プタ210のメモリ212の共通会話領域214に格納
し、通信アダプタ210に対する割り込み信号を出力し
て、このチエインについての送信依頼を行なう。The adapter control unit 301 stores a command indicating a transmission request for the chain formed by the above-described processing in the common conversation area 214 of the memory 212 of the communication adapter 210, outputs an interrupt signal to the communication adapter 210, and sends a command to the chain. Make a transmission request for.
なお、上述したステップ401およびステップ405に
おいて、分割処理テーブルを設けるときに、メモリ21
2のバッファ領域215からバッファを獲得するように
してもよい。この場合は、獲得したバッファに備えられ
た制御情報領域に、上述した分割処理テーブルの内容を
格納すればよiI にお番る
第6図に、トランスポート層およびネットワーク層にお
ける分割処理の説明図を示す。また、第7図に、実施例
による分割処理動作を表す流れ図を示す。Note that in steps 401 and 405 described above, when providing the division processing table, the memory 21
The buffer may be obtained from the second buffer area 215. In this case, the contents of the above-mentioned division processing table can be stored in the control information area provided in the acquired buffer. shows. Further, FIG. 7 shows a flowchart representing the division processing operation according to the embodiment.
例えば、第6図に示すように、上述したバッファの、■
、■、■から形威されたチエインについての送信依頼が
行なわれた場合について、まず、トランスポート層制御
部313の分割処理動作を説明する。For example, as shown in FIG.
, (1), and (2), the division processing operation of the transport layer control unit 313 will first be described in the case where a transmission request is made for a chain formed from (2), (3).
トランスボート層制御部313は、割込処理部311か
らの指示に応じて、指定された4つのバッファ■、■、
■、■のそれぞれの制御情報領域に設定されたデータ長
を順次に加算しくステップ701)、このステップ70
1における加算結果がトランスポート層における最大デ
ータ長(例えば512バイト)を超えているか否かを判
定する(ステップ702)。In response to instructions from the interrupt processing unit 311, the transport layer control unit 313 transfers the specified four buffers ■, ■,
The data lengths set in each of the control information areas of (1) and (2) are sequentially added (step 701), and this step 70
It is determined whether the addition result in step 1 exceeds the maximum data length (for example, 512 bytes) in the transport layer (step 702).
この場合は、バッファ■のデータ長を加算したときにス
テップ702における肯定判定となり、トランスポート
制御部313は、分割処理が必要であると判断する。こ
の場合は、最後にデータ長を加算したバッファ(例えば
バッファ■)の前に位置するバッファ(例えばバッファ
■)の制御情報領域に設定されたポインタをクリアして
(ステップ703)、バッファ■とバッファ■との間の
チエインをはずせばよい。これにより、上述した4つの
バッファからなるチエインは、バッファの。In this case, when the data length of the buffer ■ is added, an affirmative determination is made in step 702, and the transport control unit 313 determines that division processing is necessary. In this case, the pointer set in the control information area of the buffer (for example, buffer ■) located before the buffer to which the data length was last added (for example, buffer ■) is cleared (step 703), and the pointer set in the control information area of the buffer (for example, buffer ■) is ■Remove the chain between. As a result, the chain consisting of the four buffers described above is a chain of four buffers.
■からなるチエインとバッファ■、■からなるチエイン
とに分割される(第6図参照)。It is divided into a chain consisting of (1) and a chain consisting of buffers (2) and (2) (see Figure 6).
次に、上述したステップ702でデータ長を加算したバ
ッファがチエインの最後のバッファであるか否かが判定
され(ステップ704)、否定判定の場合は、最後にデ
ータ長を加算したバッファ(例えばバッファ■)をチエ
インの先頭として、上述したステップ701〜704を
繰り返す。Next, it is determined whether the buffer to which the data length was added in step 702 described above is the last buffer in the chain (step 704), and if the determination is negative, the buffer to which the data length was added last (for example, the buffer Steps 701 to 704 described above are repeated with (2) as the head of the chain.
一方、上述したステップ704における肯定判定の場合
は分割処理を終了し、バッファの、■からなるチエイン
とバッファ■、■からなるチエインとのそれぞれについ
て、ネットワーク層制御部314に対する送信依頼が行
なわれる(第6図参照)。On the other hand, in the case of an affirmative determination in step 704 described above, the division process is ended, and a transmission request is made to the network layer control unit 314 for each of the chain consisting of buffers ■ and the chain consisting of buffers ■ and ■. (See Figure 6).
また、ネットワーク層制御部314においては、トラン
スポート層制御部313によるバッファの。In addition, in the network layer control unit 314, the transport layer control unit 313 controls the buffer.
■とからなるチエインについての送信依頼に応して、上
述したステップ701〜704の分割処理が行なわれ、
第6図に示すようにバッファのとバッファ■との間のチ
エインがはずされて分割され、これらのバッファの、■
のそれぞれについてのデータリンク層制御部315に対
する送信依頼が順次に行なわれる。また、バッファ■、
■とからなるチエインについての送信依頼に応じて、同
様にして分割処理が行なわれ、バッファ■、■のそれぞ
れについてのデータリンク層制御部315に対する送信
依頼が順次に行なわれる(第6図参照)。In response to a transmission request for a chain consisting of
As shown in Figure 6, the chain between the buffer and the buffer ■ is removed and divided, and the buffer ■
A transmission request is sequentially made to the data link layer control unit 315 for each of the above. Also, buffer ■,
In response to a transmission request for the chain consisting of (2) and (2), division processing is similarly performed, and transmission requests to the data link layer control unit 315 for each of the buffers (2) and (2) are sequentially made (see FIG. 6). .
■、 の とめ
上述したように、アダプタ制御部301が、データ長テ
ーブル331に格納された最大データ長に基づいて、上
述したステップ401〜ステツプ408の分割予想処理
を行ない、この分割予想処理によって求めた数のバッフ
ァを獲得する。また、アプリケーションプログラムから
の送信依頼で指定された送信データを、上述した分割予
想処理で求めたデータ長を有する複数のブロックに分割
し、各ブロックを獲得したバッファのそれぞれにコピー
して、これらのバッファからなるチエインを形威し、通
信アタプタ210に対して、このチエインについての送
信依頼を行なうようにする。■, End As described above, the adapter control unit 301 performs the division prediction process of steps 401 to 408 described above based on the maximum data length stored in the data length table 331, and calculates the result by this division prediction process. Acquire the number of buffers. In addition, the transmission data specified in the transmission request from the application program is divided into multiple blocks having the data length determined by the above-mentioned division prediction process, each block is copied to each acquired buffer, and these blocks are A chain consisting of buffers is established, and a transmission request regarding this chain is made to the communication adapter 210.
また、トランスポート層制御部313およびネットワー
ク層制御部314においては、上述したステップ701
〜705で説明したように、バッファに備えられた制御
情報領域のポインタをクリアしてチエインをはずすこと
により、送信データの分割処理を行なうようにする。In addition, the transport layer control unit 313 and the network layer control unit 314 perform step 701 described above.
As explained in steps 705 to 705, the transmission data is divided by clearing the pointer of the control information area provided in the buffer and removing the chain.
これにより、送信データの一部をコピーすることなく、
各層における分割処理を行なうことが可能となり、分割
処理に要する時間を短縮して、デ−夕の伝送効率を向上
させることができる。This allows you to do so without copying any part of the transmitted data.
It becomes possible to perform division processing in each layer, thereby reducing the time required for division processing and improving data transmission efficiency.
■ の ・ ノ 誼
なお、上述した本発明の実施例にあっては、O3■に従
ったデータ伝送システムに適用した場合について説明し
たが、これに限らず、通信手順が階層化されているデー
タ伝送システムであれば適用できる。■ Note that in the embodiment of the present invention described above, the case where it is applied to a data transmission system in accordance with O3 ■ is not limited to this, but it is applicable to It can be applied to any transmission system.
更に、r■、実施例と第1図との対応関係」において、
本発明と実施例との対応関係を説明しておいたが、これ
に限られることはなく、本発明には各種の変形態様があ
ることは当業者であれば容易に推考できるであろう。Furthermore, in ``Correspondence between Examples and Figure 1'',
Although the correspondence between the present invention and the embodiments has been described, those skilled in the art will easily assume that the present invention is not limited to this and that there are various modifications.
上述したように、本発明によれば、送信データが格納さ
れた一連のバッファの相互間の連結を解除することによ
り、送信データの分割が行なわれるので、送信データの
コピーを行なうことなく、送信データの分割処理を行な
うことが可能となり、送信データの分割処理に要する時
間を短縮することができるので、実用的には極めて有用
である。As described above, according to the present invention, the transmission data is divided by disconnecting a series of buffers in which the transmission data is stored, so that the transmission data can be divided without copying the transmission data. It is possible to perform data division processing, and the time required for transmission data division processing can be shortened, which is extremely useful in practice.
第1図は本発明の通信制御方式の原理ブロック図、第2
図は本発明の一実施例による通信制御方式を適用したデ
ータ伝送システムの構成図、第3図は実施例による送信
処理の流れを示す図、第4図は実施例による分割予想動
作を表す流れ図、第5図は実施例による送信データのコ
ピー動作の説明図、
第6図は実施例による分割処理動作の説明図、第7図は
実施例による分割処理動作を表す流れ図、第8図は従来
の分割処理動作の説明図である。
図において、
111は送信処理手段、
121は格納手段、
130は送信データ格納手段、
131はバッファ、
141は送信制御手段、
201はホストコンピュータ(ホスト)、202.21
3は中央処理装置(CPU)、203.212はメモリ
、
204は回線、
211は回線制御回路、
301はアダプタ制御部、
311は割込処理部、
312は通信処理部、
313はトランスポート層制御部、
314はネットワーク層制御部、
315はデータリンク層制御部、
316は物理層制御部、
331はデータ長テーブルである。
実施例のデータ伝送システムの構成図
第2図Fig. 1 is a principle block diagram of the communication control method of the present invention, Fig. 2
The figure is a block diagram of a data transmission system to which a communication control method according to an embodiment of the present invention is applied, FIG. 3 is a diagram showing the flow of transmission processing according to the embodiment, and FIG. 4 is a flowchart showing the expected division operation according to the embodiment. , FIG. 5 is an explanatory diagram of the transmission data copy operation according to the embodiment, FIG. 6 is an explanatory diagram of the division processing operation according to the embodiment, FIG. 7 is a flowchart representing the division processing operation according to the embodiment, and FIG. 8 is a conventional diagram. FIG. 2 is an explanatory diagram of the division processing operation of FIG. In the figure, 111 is a transmission processing means, 121 is a storage means, 130 is a transmission data storage means, 131 is a buffer, 141 is a transmission control means, 201 is a host computer (host), 202.21
3 is a central processing unit (CPU), 203, 212 is a memory, 204 is a line, 211 is a line control circuit, 301 is an adapter control unit, 311 is an interrupt processing unit, 312 is a communication processing unit, 313 is a transport layer control 314 is a network layer control section, 315 is a data link layer control section, 316 is a physical layer control section, and 331 is a data length table. Figure 2 is a configuration diagram of the data transmission system of the embodiment.
Claims (1)
伝送システムの通信制御方式において、それぞれ異なる
階層に対応し、上位の階層から供給される指定情報で示
される送信データを各階層に対応するデータ単位ごとに
分割し、これらのデータ単位のそれぞれを示す指定情報
を下位の階層に供給する複数の送信処理手段(111)
と、前記複数の階層のそれぞれに対応する前記データ単
位の大きさを示すデータ単位長が格納されている格納手
段(121)と、 相互に連結されており、それぞれ所定の長さのデータを
格納する複数のバッファ(131)からなる送信データ
格納手段(130)と、 前記格納手段(121)に格納されたデータ単位長の最
小値に基づいて、供給された送信データを複数のブロッ
クに分割し、これらのブロックのそれぞれを前記複数の
バッファ(131)のそれぞれに格納するとともに、前
記送信データが格納された一連のバッファ(131)を
示す指定情報を最も上位の階層に対応する送信処理手段
(111)に供給する送信制御手段(141)と、を備
え、前記複数の送信処理手段(111)のそれぞれが、
供給された指定情報で示される一連のバッファ(131
)の相互間の連結を解除して、前記一連のバッファ(1
31)に格納された送信データを複数の送信データに分
割するように構成したことを特徴とする通信制御方式。(1) In a communication control method for a data transmission system in which communication procedures are layered into multiple layers, each layer corresponds to a different layer, and transmission data indicated by specified information supplied from a higher layer is handled in each layer. a plurality of transmission processing means (111) that divides each data unit into data units and supplies specification information indicating each of these data units to a lower layer;
and storage means (121) storing a data unit length indicating the size of the data unit corresponding to each of the plurality of hierarchies; a transmission data storage means (130) consisting of a plurality of buffers (131) for dividing the supplied transmission data into a plurality of blocks based on the minimum value of the data unit length stored in the storage means (121); , stores each of these blocks in each of the plurality of buffers (131), and transmits specification information indicating a series of buffers (131) in which the transmission data is stored to a transmission processing means (corresponding to the highest layer). 111), each of the plurality of transmission processing means (111)
A series of buffers (131
), and the series of buffers (1
31) A communication control system characterized in that the transmission data stored in 31) is divided into a plurality of transmission data.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2074248A JPH03274847A (en) | 1990-03-23 | 1990-03-23 | Communication control system |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2074248A JPH03274847A (en) | 1990-03-23 | 1990-03-23 | Communication control system |
Publications (1)
Publication Number | Publication Date |
---|---|
JPH03274847A true JPH03274847A (en) | 1991-12-05 |
Family
ID=13541671
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2074248A Pending JPH03274847A (en) | 1990-03-23 | 1990-03-23 | Communication control system |
Country Status (1)
Country | Link |
---|---|
JP (1) | JPH03274847A (en) |
-
1990
- 1990-03-23 JP JP2074248A patent/JPH03274847A/en active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP2977688B2 (en) | Multi-processing device, method, and processor used for the same | |
JPS60160463A (en) | Processor system | |
US5594878A (en) | Bus interface structure and system for controlling the bus interface structure | |
JP4817834B2 (en) | Interrupt control device and interrupt control method | |
JPH08147234A (en) | Device and method for processing stream | |
JPH03274847A (en) | Communication control system | |
US6970911B2 (en) | Distributed memory type parallel computer and write data transfer end confirming method thereof | |
JPS62125734A (en) | Hierarchy type decentralized control system | |
JP2002176464A (en) | Network interface device | |
JPH04364549A (en) | File storing system and access system | |
JPH05282242A (en) | Bus control system | |
JPH01157145A (en) | Polling method | |
JPH05153183A (en) | Data transferring system using plural links | |
JP3293838B2 (en) | Data transfer method | |
JP2529775B2 (en) | Transmission line selection method | |
JP3265026B2 (en) | I / O data exchange method | |
JP2000259523A (en) | Data transfer device, lan communication system and data transfer method | |
JP3457432B2 (en) | Method of communication between processors and processor used therefor | |
JP3173959B2 (en) | Local area network device | |
JP2002024157A (en) | Method and device for processing dma | |
JP2748404B2 (en) | Binary data memory | |
JP2575936B2 (en) | Content search device | |
JPH01226252A (en) | System for dividing transmission data for plural hierarchy protocols | |
JP2002341907A (en) | Method for transmitting/receiving data in blast furnace facility program logic controller | |
JPS63305443A (en) | Method for managing virtual space group |