第1章 简介
如今,人们可以通过电脑来打电话,看电视,与朋友聊天,与其他人玩游戏,甚至可以通过电脑买到你能想到的任何东西,包括从歌曲到SUV[1]。计算机程序能够通过互联网相互通信使这一切成为了可能。很难统计现在有多少个人电脑接入互联网,但可以肯定,这个数量增长得非常迅速,相信不久就能达到10亿。除此之外,新的应用程序每天在互联网上层出不穷。随着日益增加的互联网访问带宽,我们可以预见,互联网将会对人们将来的生活产生长远的影响。
那么程序是如何通过网络进行相互通信的呢?本书的目的就是通过在Java编程语言环境下,带领你进入对这个问题的解答之路。Java语言从一开始就是为了让人们使用互联网而设计的,它为实现程序的相互通信提供了许多有用的抽象应用编程接口(Application Programming Interface,API),这类应用编程接口被称为套接字(socket)。
在我们开始探究套接字的细节之前,有必要向读者简单介绍计算机网络和通信协议的整体框架,以使读者能清楚我们的代码将应用的地方。本章的目的不是向读者介绍计算机网络和TCP/IP协议是如何工作的(已经有很多相关内容的教程[2][3][4][5][6]),而是介绍一些基本的概念和术语。