Socket 接口用法详解
作者:网络转载 发布时间:[ 2015/1/20 14:28:36 ] 推荐标签:Socket java
2.连接地址
打电话时,呼叫方必须事先知道所需拨打的号码,而程序建立网络连接时,也同样需要知道地址或主机名称。另外,网络连接还需要一个端口号(可以将其当作电话的分机号),连接到正确的主机之后,需要对该连接确认特定口令。某些情况下,还需要使用一个扩展号码与网络计费系统相连,于是相应地要有一个特定端口号用于连接计费程序。
3.端口号
在 TCP/IP 系统中,端口号由 16 位二进制整数组成,即在 0-65535 之间。实际应用中,前1024 个端口号已经预先定义为一些特定服务,因此一般不能使用,除非想同这些服务器进行连接(如 Telnet,SMTP,mail,ftp 等)。在两个程序连接之前,彼此之间必须达成一致,即由客户端负责初始化连接,而服务器随时等候请求。只有客户端和服务器端指定端口号一致时连接才会建立。如果系统中两个程序所用端口号不一致,这连接无法建立。
4.网络连接模式
在 Java 中,TCP/IP 接口的连接是由 java.net 包中的类实现的。如图表示的是 Socket 连接过程中客户端和服务器端的工作原理。
每个 server 端都拥有一个端口号,一台机器上如果运行多个服务,这可能对应多个端口号。通信结束后,两端分别关闭对应的 Socket 接口,而不影响其他的端口。
Socket 通信的基本步骤
使用 Socket 方式进行网络通信的程序基本结构都是类似的,无论一个 Socket 通信程序的功能多么齐全、程序多么复杂,其基本结构都是一样的。客户端与服务器端进行通信的过程都包括以下四个基本步骤:
(1)在服务器端指定一个用来等待连接的端口号,在客户端规定一个主机和端口号,从而在客户端和服务器端创建 Socket/ServerSocket 实例。
(2)打开连接到 Socket 的输入输出流。
(3)利用输入输出流,按照一定的协议对 Socket 进行读写操作。
(4)关闭输入输出流和 Socket
通常,程序员的主要工作时针对所要完成的功能砸器第(3)步进行编程,第(1)、(2)、(4)步对所有的通信程序来说几乎都是一样的。
Socker 通信的程序设计
1.服务器端程序
TCP/IP 服务器端应用程序是通过 Java 语言中提供的 ServerSocket 和 Socket 这两个有关网络的类来实现的。而 ServerSocket 类除了建立一个 Server 之外,还通过 accept()方法提供了随
时监听客户端连接请求的功能,它的构造方法有以下两种。
ServerSocket(int port)
ServerSocket(int port,int backlog)
其中 port 是指连接中对方的端口号,backlog 则表示服务器端所能支持的大连接数。下面的程序用来监听客户端应用程序建立连接的请求,并在连接建立后向客户端发送信息。
相关推荐
更新发布
常用的选择回归测试的方式有哪些?
2022/6/14 16:14:27测试流程中需要重点把关几个过程?
2021/10/18 15:37:44性能测试的七种方法
2021/9/17 15:19:29全链路压测优化思路
2021/9/14 15:42:25性能测试流程浅谈
2021/5/28 17:25:47常见的APP性能测试指标
2021/5/8 17:01:11系统性能测试及调优前期准备
2021/4/15 14:41:29国内比较好用的5款测试管理工具
2021/3/25 17:23:31