Java实现基于Socket的聊天室(一)序言

序言

1.1 什么是Socket?

在网络编程中,网络上的两个程序通过一个双向的通信连接实现数据的交换,这个连接的一端称为一个socket。Socket套接字是通信的基石,支持TCP/IP协议的网络通信的基本操作单元。它包含网络通信五种基本信息:连接使用的协议,本地主机的IP地址,本地进程的协议端口,远地主机的IP地址,远地进程的协议端口。

1.2 Socket的原理

Socket实质上提供了进程通信的端点。使用Socket进行网络通信,通信双方必须各自创建一个通信端点。可以理解为打电话,打电话的双方都必须拥有一台电话机方可。

Socket的连接过程可以分为三个步骤:服务器监听、客户端请求与连接确认。

1.服务器监听:是服务器端套接字并不定位具体客户端套接字,而是处于等待连接的状态,实时监控网络状态

2.客户端请求:是指由客户端的套接字提出连接请求,要连接的目标是服务器端的套接字。因此,客户端的套接字必须首先描述它要连接的服务器的套接字,指出服务器端套接字的地址和端口号,然后就向服务器端套接字提出连接请求。

3.连接确认:是指当服务器端套接字监听到或者说接收到客户端套接字的连接请求,它就响应客户端套接字的请求,建立一个新的线程,把服务器端套接字描述发给客户端,一旦客户端确认了此描述,连接建立完成。而服务器端套接字继续处于监听状态,继续接收其他客户端套接字的连接请求。

1.3 Java环境下的Socket实现

基于Java的Socket编程,即实现一个正常通信的Socket,需要包含以下四个步骤:

1.创建一个Socket

2.打开连接Socket的输入/输出流

3.按照定义的协议规范对Socket进行读/写操作

4.传输完毕后,关闭Socket

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值