ソケットとは、通信するアプリケーション同士の出入り口のことで、IPアドレスとポート番号の組み合わせで表現できます。Javaでは、このソケットに対するデータの入出力をストリームを利用して行います。 ソケット通信では、TCP(Transmission Control Protocol)、UDP(User Diagram Protocol)のいずれかを利用します。両者の違いは、前者が信頼性を重視するのに対して、後者が高速性を重視する点です。本稿では、TCPを前提に解説を進めます。
監修
山田祥寛(有限会社 WINGSプロジェクト)
静岡県榛原町生まれ。一橋大学経済学部卒業後、NEC にてシステム企画業務に携わるが、2003年 4 月に念願かなってフリーライターに転身。Microsoft MVP for Visual Studio and Development Technologies。執筆コミュニティ「WINGSプロジェクト(https://wings.msn.to/)」の代表でもある。主な著書に『改訂 3 版JavaScript 本格入門』(技術評論社)、「独習シリーズ(C#・Python・PHP・Ruby・JSP&サーブレットなど)」(翔泳社)、「速習シリーズ(ASP.NET Core・Vue.js・React・TypeScript・ECMAScript、Laravel など)」(Amazon Kindle)など。売り上げの累計は100万部を超える。