こちらは、Go3 Advent Calendar 2018 の 3 日目の記事です。 昨日は、@takochuu さんの 標準パッケージから見るパッケージ構成のパターンの解説でした。 (標準パッケージでも、様々な構成があって勉強になりました。) 概要 Go で非常に簡単なプロトコルを実装してみました。 (本当に簡単なのでご容赦ください。) 対象 プロトコルってどうやって作るのか気になる方 なんとなく読んでみたい方 内容 簡単なプロトコルの Go 実装 アプリケーション層のプロトコルを実装 ネットワーク層は TCP 通信 詳細 プロトコル仕様 簡単なユーザー認証が入ったプロトコルで、下記の通りに通信します。 1. 初期リクエストパケット (Clinet -> Server) 対象リクエストか否かを判定するため、Clientから特定のbyte(ENQ)のリクエストを送ります。