© Jan Newmarch 2017

Jan Newmarch, Network Programming with Go, 10.1007/978-1-4842-2692-6_5

5. Application-Level Protocols

Jan Newmarch

(1)Oakleigh, Victoria, Australia

A client and server need to exchange information via messages. TCP and UDP provide the transport mechanisms to do this. The two processes also need to have a protocol in place so that message exchange can take place meaningfully. A protocol defines what type of conversation can take place between two components of a distributed application, by specifying messages, data types, encoding formats, and so on. This chapter looks at some of the issues involved in this process and gives a complete example of a simple client-server application.

Protocol Design

There are many possibilities and ...

Get Network Programming with Go: Essential Skills for Using and Securing Networks now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.