java中的socket

本文介绍了Socket在计算机网络中的作用,区分了TCP和UDP套接字的特点,详细讲解了Java中如何通过ServerSocket和Socket进行网络通信,以及其在在线聊天室、游戏等应用场景中的运用,包括服务器端和客户端的实现步骤。
摘要由CSDN通过智能技术生成

socket是什么

Socket(套接字)是计算机网络中传输层(TCP/IP协议)提供的一种基于TCP/IP协议进行通信的机制。Socket 是对 TCP/IP 协议的封装,它是一个端到端的双向通信流,通过 Socket 可以使不同的进程在网络中通信,进程间可以通过 Socket 实现数据传输和通信。

在建立 Socket 连接时,客户端需要知道服务器的 IP 地址和端口号,服务器监听指定的端口,等待客户端的连接请求。客户端发起连接请求时,会向服务器发送连接请求报文段,如果服务器接受连接,则会返回一个确认报文段,建立连接后,客户端和服务器之间就可以开始通信了。

Socket 可以分为面向连接的 TCP Socket 和无连接的 UDP Socket 两种方式。TCP Socket 提供全双工、稳定可靠的通信服务,在数据传输过程中保证数据的完整性和顺序性,适用于要求高速传输和可靠性的场合;UDP Socket 则提供非面向连接的通信服务,不保证数据的可靠性和顺序性,但能够实现高速传输和广播分发等功能,适用于需要快速传输和实时性的场合。

Java 中提供了 java.net 包来实现 Socket 编程,通过 Socket 类和 ServerSocket 类实现 TCP/IP 协议通信,通过 DatagramSocket 和 DatagramPacket 类实现 UDP 协议通信,它们提供了 Java 程序员操作 Socket 的接口。

服务端与客户端通讯模型

Socket通信实现步骤

  • 创建ServerSocket和Socket
  • 打开连接到Socket的输入、输出流
  • 按照协议对Socket进行读/写操作
  • 关闭输入输出流、关闭Socket

有何应用

在线聊天室

在线游戏

实时数据传送

。。。。。。

 java中实现

服务器端:

  1. 创建ServerSocket对象,绑定监听端口。

  2. 通过accept()方法监听客户端请求。

  3. 连接建立后,通过输入流读取客户端发送的请求信息。

  4. 通过输出流向客户端发送响应信息。

  5. 关闭相关资源。

 其中通过while循环来实现服务器端进行长连接

客户端:

  1. 创建Socket对象,指明需要连接的服务器的地址和端口号

  2. 连接建立后,通过输出流向服务器端发送请求信息。

  3. 通过输入流获取服务器端响应的信息。

  4. 关闭相关资源。

 结果

客户端代码也可以通过while循环来实现长连接,就可以实现与服务器端通话。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值