Nothing Special   »   [go: up one dir, main page]

skip to main content
article
Free access

Packet types: abstract specification of network protocol messages

Published: 28 August 2000 Publication History

Abstract

In writing networking code, one is often faced with the task of interpreting a raw buffer according to a standardized packet format. This is needed, for example, when monitoring network traffic for specific kinds of packets, or when unmarshaling an incoming packet for protocol processing. In such cases, a programmer typically writes C code that understands the grammar of a packet and that also performs any necessary byte-order and alignment adjustments. Because of the complexity of certain protocol formats, and because of the low-level of programming involved, writing such code is usually a cumbersome and error-prone process. Furthermore, code written in this style loses the domain-specific information, viz. the packet format, in its details, making it difficult to maintain.

References

[1]
Mark B. Abbott and Larry L. Peterson. A language-based approach to protocol implementation. ACM Transactions on Networking, 1(1):4-19, February 1993.]]
[2]
Mary L. Bailey, Burra Gopal, Michael A. Pagels, Larry L. Peterson, and Prasenjit Sarkar. PathFinder: A patternbased packet classifier. In Proceedings of the First Symposium on Operating Systems Design and Implementation. USENIX Association, November 1994.]]
[3]
Anindya Basu, Mark Hayden, Greg Morrisett, and Thorsten von Eicken. A language-based approach to protocol construction. In Proceedings of the ACM SIGPLAN Workshop on Domain Specic Languages (WDSL), Paris, France, January 1997.]]
[4]
Andrew Begel, Steven McCanne, and Susan L. Graham. BPF+: Exploiting global data- ow optimization in a generalized packet lter architecture. Computer Communication Review, 29(4):123-34, October 1999.]]
[5]
Gerard Berry and Georges Gonthier. The ESTEREL synchronous programming language: Design, semantics, implementation. Technical Report 842, Ecole Nationale Superieure des Mines de Paris, 1988.]]
[6]
Edoardo Biagioni, Robert Harper, and Peter Lee. Signatures for a network protocol stack: A systems application of Standard ML. In Lisp and Functional Programming, 1994.]]
[7]
Milind M. Buddhikot, Subash Suri, and Marcel Waldvogel. Space decomposition techniques for fast layer-4 switching. In Proceedings of the Sixth International Workshop on Protocols for High Speed Networks, pages 25-41. Kluwer Academic Publishers, August 1999.]]
[8]
CCITT. Recommendation X.208: Specication of Abstract Syntax Notation One (ASN.1), 1988.]]
[9]
Eric Eide, Kevin Frei, Bryan Ford, Jay Lepreau, and Gary Lindstrom. Flick: A exible, optimizing IDL compiler. In Proceedings of PLDI '97, pages 44-56, 1997.]]
[10]
Dawson R. Engler and M. Frans Kaashoek. DPF: Fast, exible message demultiplexing using dynamic code generation. In Proceedings of ACM SIGCOMM'96 Conference on Applications, Technologies, Architectures and Protocols for Computer Communication, 1996.]]
[11]
Norman C. Hutchinson and Larry L. Peterson. The x-Kernel: An architecture for implementing network protocols. Transactions on Software Engineering, 17(1):64-76, January 1991.]]
[12]
International Telecommunication Union. Recommendation Q.931 - ISDN user-network interface layer 3 specication for basic call control, May 1998.]]
[13]
Mahesh Jayaram and Ron K. Cytron. Efficient demultiplexing of network packets by automatic parsing. In Proceedings of the Workshop on Compiler Support for System Software (WCSSS), 1996.]]
[14]
Eddie Kohler, M. Frans Kaashoek, and David R. Montgomery. A readable TCP in the Prolac protocol language. Computer Communication Review, 29(4):3-13, October 1999.]]
[15]
Barbara H. Liskov and Jeannette M. Wing. A behavioral notion of subtyping. ACM Transactions on Programming Languages and Systems, 16(4), November 1994.]]
[16]
Steven McCanne and Van Jacobsen. The BSD packet lter: A newarchitecture for user-level packet capture. In 1993 Winter USENIX, pages 259-269, January 1993.]]
[17]
Jerey C. Mogul, Richard F. Rashid, and Michael J. Accetta. The packet lter: An efficient mechanism for user-level network code. In Proceedings of the 11th ACM Symposium on Operating Systems Principles, pages 39-51, November 1987.]]
[18]
Michael Mouly. CSN.1 Specication, Version 2. Cell & Sys, 1998.]]
[19]
Object Management Group. CORBA/IIOP 2.2 Specication, 1998.]]
[20]
Sean W. O'Malley, Todd A. Proebsting, and Allen B. Montz. USC: A universal stub compiler. In Proceedings of the SIG- COMM '94 Symposium, October 1994. 333]]
[21]
J. Postel. RFC 791: Internet Protocol, September 1981. Obsoletes RFC0760. See also STD0005. Status: STANDARD.]]
[22]
W. Simpson. RFC 1662: PPP in HDLC-like framing, July 1994. See also STD0051 . Obsoletes RFC1549 . Status: STANDARD.]]
[23]
R. Srinivasan. RFC 1832: XDR: External data representation standard, August 1995. Status: DRAFT STANDARD.]]
[24]
Masanobu Yuhara, Brian N. Bershad, Chris Maeda, and J. Eliot B. Moss. Efficient packet demultiplexing for multiple endpoints and large messages. In Proceedings of the 1994 Winter USENIX Conference, pages 153-165, January 1994.]]

Cited By

View all
  • (2022)Layer 7 Packet Filtering Implementation on Actual KernelsInternational Journal of Advanced Research in Science, Communication and Technology10.48175/IJARSCT-3322(635-642)Online publication date: 27-Apr-2022
  • (2022)A Model and Declarative Language for Specifying Binary Data FormatsProgramming and Computing Software10.1134/S036176882207004048:7(469-483)Online publication date: 1-Dec-2022
  • (2021)Investigating Automatic Code Generation for Network Packet Parsing2021 IFIP Networking Conference (IFIP Networking)10.23919/IFIPNetworking52078.2021.9472829(1-9)Online publication date: 21-Jun-2021
  • Show More Cited By

Recommendations

Comments

Please enable JavaScript to view thecomments powered by Disqus.

Information & Contributors

Information

Published In

cover image ACM SIGCOMM Computer Communication Review
ACM SIGCOMM Computer Communication Review  Volume 30, Issue 4
October 2000
319 pages
ISSN:0146-4833
DOI:10.1145/347057
Issue’s Table of Contents
  • cover image ACM Conferences
    SIGCOMM '00: Proceedings of the conference on Applications, Technologies, Architectures, and Protocols for Computer Communication
    August 2000
    348 pages
    ISBN:1581132239
    DOI:10.1145/347059
Permission to make digital or hard copies of all or part of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. Copyrights for components of this work owned by others than ACM must be honored. Abstracting with credit is permitted. To copy otherwise, or republish, to post on servers or to redistribute to lists, requires prior specific permission and/or a fee. Request permissions from [email protected]

Publisher

Association for Computing Machinery

New York, NY, United States

Publication History

Published: 28 August 2000
Published in SIGCOMM-CCR Volume 30, Issue 4

Check for updates

Qualifiers

  • Article

Contributors

Other Metrics

Bibliometrics & Citations

Bibliometrics

Article Metrics

  • Downloads (Last 12 months)244
  • Downloads (Last 6 weeks)26
Reflects downloads up to 13 Nov 2024

Other Metrics

Citations

Cited By

View all
  • (2022)Layer 7 Packet Filtering Implementation on Actual KernelsInternational Journal of Advanced Research in Science, Communication and Technology10.48175/IJARSCT-3322(635-642)Online publication date: 27-Apr-2022
  • (2022)A Model and Declarative Language for Specifying Binary Data FormatsProgramming and Computing Software10.1134/S036176882207004048:7(469-483)Online publication date: 1-Dec-2022
  • (2021)Investigating Automatic Code Generation for Network Packet Parsing2021 IFIP Networking Conference (IFIP Networking)10.23919/IFIPNetworking52078.2021.9472829(1-9)Online publication date: 21-Jun-2021
  • (2020)Parsing Protocol Standards to Parse Standard ProtocolsProceedings of the 2020 Applied Networking Research Workshop10.1145/3404868.3406671(25-31)Online publication date: 27-Jul-2020
  • (2017)Generic packet descriptions: verified parsing and pretty printing of low-level dataProceedings of the 2nd ACM SIGPLAN International Workshop on Type-Driven Development10.1145/3122975.3122979(30-40)Online publication date: 3-Sep-2017
  • (2017)A Framework for Validating Session Protocols2017 IEEE Security and Privacy Workshops (SPW)10.1109/SPW.2017.35(110-119)Online publication date: May-2017
  • (2016)Horn Binary Serialization AnalysisElectronic Proceedings in Theoretical Computer Science10.4204/EPTCS.219.6219(56-68)Online publication date: 14-Jul-2016
  • (2016)PISCESProceedings of the 2016 ACM SIGCOMM Conference10.1145/2934872.2934886(525-538)Online publication date: 22-Aug-2016
  • (2015)VeRV: A temporal and data-concerned verification framework for the vehicle bus systems2015 IEEE Conference on Computer Communications (INFOCOM)10.1109/INFOCOM.2015.7218491(1167-1175)Online publication date: Apr-2015
  • (2014)NailProceedings of the 11th USENIX conference on Operating Systems Design and Implementation10.5555/2685048.2685098(615-628)Online publication date: 6-Oct-2014
  • Show More Cited By

View Options

View options

PDF

View or Download as a PDF file.

PDF

eReader

View online with eReader.

eReader

Get Access

Login options

Media

Figures

Other

Tables

Share

Share

Share this Publication link

Share on social media