WEKO3
アイテム
アプリケーション層プロトコルの実現を容易にするフレームワーク
https://ipsj.ixsq.nii.ac.jp/records/16756
https://ipsj.ixsq.nii.ac.jp/records/167563d02c220-c087-4cff-9a78-6720697a572d
| 名前 / ファイル | ライセンス | アクション |
|---|---|---|
|
|
Copyright (c) 2003 by the Information Processing Society of Japan
|
|
| オープンアクセス | ||
| Item type | Trans(1) | |||||||
|---|---|---|---|---|---|---|---|---|
| 公開日 | 2003-02-15 | |||||||
| タイトル | ||||||||
| タイトル | アプリケーション層プロトコルの実現を容易にするフレームワーク | |||||||
| タイトル | ||||||||
| 言語 | en | |||||||
| タイトル | A Framework for Simplifying the Programming of Application - level Protocols | |||||||
| 言語 | ||||||||
| 言語 | jpn | |||||||
| キーワード | ||||||||
| 主題Scheme | Other | |||||||
| 主題 | 通常論文 | |||||||
| 資源タイプ | ||||||||
| 資源タイプ識別子 | http://purl.org/coar/resource_type/c_6501 | |||||||
| 資源タイプ | journal article | |||||||
| 著者所属 | ||||||||
| 電気通信大学情報工学科/科学技術振興事業団さきがけ研究21 | ||||||||
| 著者所属(英) | ||||||||
| en | ||||||||
| Department of Computer Science, University of Electro - Communications/PRESTO, Japan Science Technology Corp. | ||||||||
| 著者名 |
河野, 健二
× 河野, 健二
|
|||||||
| 著者名(英) |
Kenji, Kono
× Kenji, Kono
|
|||||||
| 論文抄録 | ||||||||
| 内容記述タイプ | Other | |||||||
| 内容記述 | インターネットなどの広域分散環境では,アプリケーション層プロトコルを用いて通信を行うアプリケーションが多数利用されている.HTTP やSMTP などのアプリケーション層プロトコルは,文字列を主体としたメッセージのやりとりとして定義されており,その実現には文字列の解析や構成を行う退屈で煩雑なコーディングを要する.また,時系列に沿ったメッセージのやりとりやシステムの状態遷移がプログラム・コード中に埋没し,プロトコルの挙動を把握することが難しい.そのためプロトコル処理部の保守性,安全性が低下し,インターネット・サーバのセキュリティ・ホールの一因となることも多い.本論文では,クライアント・サーバ型のアプリケーション層プロトコルを対象に,プロトコル処理部を自動的に生成するコード生成器April について報告する.April はアプリケーション層プロトコルの記述に特化した記法を提供しており,1)メッセージ・フォーマットの定義,2)時系列に沿ったメッセージのやりとり,3)システムの状態遷移のみを記述すれば,C 言語のコードを自動的に生成する.メッセージの解析や構成に必要な文字列処理はApril の処理系が行い,プログラマが記述する必要はない.また,時系列に沿ったメッセージのやりとりやシステムの状態遷移が明示的に記述されているため,プロトコルの挙動が把握しやすい.本論文では,April によるプロトコルの記述例を示し,April を用いたことによるプロトコル処理のオーバヘッドが十分に小さいことを示す. | |||||||
| 論文抄録(英) | ||||||||
| 内容記述タイプ | Other | |||||||
| 内容記述 | The growing use of Internet services increases the opportunities for developing application-level protocols such as HTTP, SMTP, and POP. It is a tedious but error-prone task to implement an application-level protocol or to modify the existing implementation. It requires careful manipulation of strings because a trivial bug in the implementation may cause a serious security hole in the Internet service. Making matters worse, an intuitive behavior of the protocol is not clear from the code because message exchanges and state transitions are usually scattered throughout the implementation and buried deeply in the code. In this paper we present the design and implementation of April, a domain-specific language specifically designed for describing application-level protocols of the client-server style. April provides high-level abstractions that are specific to the domain of programming application-level protocols, thus improving safety, productivity, and maintainability of application-level protocols. More specifically, April generates a corresponding C code only if the programmer describes 1) message formats, 2) exchanges of messages between clients and servers in time sequence, and 3) state transitions triggered by messages. In this paper we show a sample of the real protocol in April and demonstrate that the overhead incurred by the use of April is negligible. | |||||||
| 書誌レコードID | ||||||||
| 収録物識別子タイプ | NCID | |||||||
| 収録物識別子 | AA11464814 | |||||||
| 書誌情報 |
情報処理学会論文誌プログラミング(PRO) 巻 44, 号 SIG02(PRO16), p. 25-35, 発行日 2003-02-15 |
|||||||
| ISSN | ||||||||
| 収録物識別子タイプ | ISSN | |||||||
| 収録物識別子 | 1882-7802 | |||||||
| 出版者 | ||||||||
| 言語 | ja | |||||||
| 出版者 | 情報処理学会 | |||||||