An extensible protocol-processing code generator from definitions of application-layer protocols

Katsuyuki Abe, Hideya Iwasaki, Kenji Kono

Research output: Contribution to journalArticle

Abstract

Server/client programs for Internet services have to be updated every time application-layer protocols are revised, e.g., from HTTP/1.0 to HTTP/1.1, to cope with the extensions. This makes it difficult to properly maintain the server/client programs. To resolve this problem, this paper proposes a system that automatically generates protocol processing codes for both server and client programs from the descriptions of the server/client's state transitions, which are caused by message exchanges between a server and a client. The proposed system introduces two mechanisms, namely inheritance and override of state transitions, that enable us to specify only the differences between the old and new versions of the protocols. Using this system, both server and client programs are expected to be easier to reuse and maintain.

Original languageEnglish
Pages (from-to)150-163
Number of pages14
JournalComputer Software
Volume24
Issue number2
Publication statusPublished - 2007

Fingerprint

Servers
Network protocols
Processing
HTTP
Computer systems
Internet

ASJC Scopus subject areas

  • Software

Cite this

An extensible protocol-processing code generator from definitions of application-layer protocols. / Abe, Katsuyuki; Iwasaki, Hideya; Kono, Kenji.

In: Computer Software, Vol. 24, No. 2, 2007, p. 150-163.

Research output: Contribution to journalArticle

@article{63bc9c8d5dd940fd83795d96cea27831,
title = "An extensible protocol-processing code generator from definitions of application-layer protocols",
abstract = "Server/client programs for Internet services have to be updated every time application-layer protocols are revised, e.g., from HTTP/1.0 to HTTP/1.1, to cope with the extensions. This makes it difficult to properly maintain the server/client programs. To resolve this problem, this paper proposes a system that automatically generates protocol processing codes for both server and client programs from the descriptions of the server/client's state transitions, which are caused by message exchanges between a server and a client. The proposed system introduces two mechanisms, namely inheritance and override of state transitions, that enable us to specify only the differences between the old and new versions of the protocols. Using this system, both server and client programs are expected to be easier to reuse and maintain.",
author = "Katsuyuki Abe and Hideya Iwasaki and Kenji Kono",
year = "2007",
language = "English",
volume = "24",
pages = "150--163",
journal = "Computer Software",
issn = "0289-6540",
publisher = "Japan Society for Software Science and Technology",
number = "2",

}

TY - JOUR

T1 - An extensible protocol-processing code generator from definitions of application-layer protocols

AU - Abe, Katsuyuki

AU - Iwasaki, Hideya

AU - Kono, Kenji

PY - 2007

Y1 - 2007

N2 - Server/client programs for Internet services have to be updated every time application-layer protocols are revised, e.g., from HTTP/1.0 to HTTP/1.1, to cope with the extensions. This makes it difficult to properly maintain the server/client programs. To resolve this problem, this paper proposes a system that automatically generates protocol processing codes for both server and client programs from the descriptions of the server/client's state transitions, which are caused by message exchanges between a server and a client. The proposed system introduces two mechanisms, namely inheritance and override of state transitions, that enable us to specify only the differences between the old and new versions of the protocols. Using this system, both server and client programs are expected to be easier to reuse and maintain.

AB - Server/client programs for Internet services have to be updated every time application-layer protocols are revised, e.g., from HTTP/1.0 to HTTP/1.1, to cope with the extensions. This makes it difficult to properly maintain the server/client programs. To resolve this problem, this paper proposes a system that automatically generates protocol processing codes for both server and client programs from the descriptions of the server/client's state transitions, which are caused by message exchanges between a server and a client. The proposed system introduces two mechanisms, namely inheritance and override of state transitions, that enable us to specify only the differences between the old and new versions of the protocols. Using this system, both server and client programs are expected to be easier to reuse and maintain.

UR - http://www.scopus.com/inward/record.url?scp=34249915040&partnerID=8YFLogxK

UR - http://www.scopus.com/inward/citedby.url?scp=34249915040&partnerID=8YFLogxK

M3 - Article

VL - 24

SP - 150

EP - 163

JO - Computer Software

JF - Computer Software

SN - 0289-6540

IS - 2

ER -