Elements of ML programming
Coloured Petri nets (2nd ed.): basic concepts, analysis methods and practical use: volume 1
Coloured Petri nets (2nd ed.): basic concepts, analysis methods and practical use: volume 1
Computer networks (3rd ed.)
Learning Perl (2nd ed.)
Formal verification of communication protocols
IFIP TC6/ 6.1 international conference on formal description techniques IX/protocol specification, testing and verification XVI on Formal description techniques IX : theory, application and tools: theory, application and tools
The importance of the service concept in the design of data communications protocols
Proceedings of the IFIP WG6.1 Fifth International Conference on Protocol Specification, Testing and Verification V
Validating TCP connection management
CRPIT '02 Proceedings of the conference on Application and theory of petri nets: formal methods in software engineering and defence systems - Volume 12
ACSC '04 Proceedings of the 27th Australasian conference on Computer science - Volume 26
Proceedings of the 2005 conference on Applications, technologies, architectures, and protocols for computer communications
Formalising TCP's Data Transfer Service Language: A Symbolic Automaton and its Properties
Fundamenta Informaticae - Half a Century of Inspirational Research: Honoring the Scientific Influence of Antoni Mazurkiewicz
A Rigorous Approach to Networking: TCP, from Implementation to Protocol to Service
FM '08 Proceedings of the 15th international symposium on Formal Methods
Formalising TCP's Data Transfer Service Language: A Symbolic Automaton and its Properties
Fundamenta Informaticae - Half a Century of Inspirational Research: Honoring the Scientific Influence of Antoni Mazurkiewicz
Hi-index | 0.00 |
The Transmission Control Protocol (TCP) is an important transport layer protocol providing a reliable data transfer service to support many applications running over the Internet such as the World Wide Web. It is therefore important to define the intent of TCP. This is achieved by describing the services it is intended to provide in an abstract way, known as a service definition. Several attempts have been made to define the services provided by TCP, however, they are all inadequate in various ways. In particular, most of them follow the applications interface defined in the TCP Request for Comments (RFC 793) too closely, making them rather implementation specific. The aim of our work is to provide an appropriately abstract definition of the TCP service, following the guidance of the Open Systems Interconnection service conventions, and to make it as general and as complete as possible. We define the service in terms of a set of 15 service primitives and their sequences, for TCP's main features of connection establishment, data transfer, urgent data transfer, orderly connection release, and aborting connections. The choice of primitives is discussed in terms of their relationship with the Interface Definition of RFC 793. We formalise the TCP service using Coloured Petri Nets, and from it generate the global sequences of service primitives for TCP's Connection Management services (including aborts). We believe this is the first time this has been achieved.