深入学习socket网络编程,以java语言为例
了解java的socket编程与Linux Socket API之间的关系 一、java的网络编程 1、socket原理 socket通信就是通过IP和端口号将两台主机建立连接,提供通信。主机A的应用程序要能和服务器B进行通信,必须通过Socket建立连接,而建立Socket连接本质上就是依靠TCP/IP协议来建立TCP连接。TCP协议是传输层协议,建立TCP连接还需要用到底层的各种协议的服务,其中最主要的是依靠IP协议来寻找网络中的主机。处于网络层的IP协议可以通过IP地址找到所要寻找的目标主机,但是一台主机可能运行着多个应用程序,我们必须指定TCP或UDP的地址(端口号)的确定端口号,因此一个Socket实例唯一代表一个主机上的应用程序的通信链路。 2、java socket的底层实现 Java socket服务器的建立步骤如下: 1.创建服务器ServerSocket对象和系统要指定的端口号 2.使用ServerSocket对象中的accept() 获取请求的客户端对象socket 3.使用socket对象中的方法getInputStream获取网络字节输入流对象InputStream 4.使用网络字节输入流对象InputStream的read方法,读取客户端发送的数据 5