基于Socket的TCP/UDP通信过程

什么是Socket

Socket是网络驱动层提供给应用程序编程的接口和一种机制。
Socket在应用程序中创建,通过一种绑定机制与驱动程序建立联系,告诉自己所对应的IP地址和端口号。

什么是TCP协议

基于Socket的TCP通信过程

在这里插入图片描述
服务器端首先创建一个ServerSocket并且宣布开放的端口号,然后调用accept方法等待客户端的连接,客户机创建一个Socket表示连接的地址和端口号向服务端发送链接请求,服务器收到请求后为此客户机创建新的Socket建立专线。建立专线连接的两个Socket在一个单独的线程上对话,之后重复如此。通信完成后关闭Socket。

什么是UDP协议

UDP协议(用户数据协议,User Datagram Protocol)是一个无连接的、发送独立数据包的协议,不保证数据按顺序传送和正确送达’

基于Socket的UDP通信过程

在这里插入图片描述 首先客户端和服务器端都创建一个DatagramSocket()实例对象,然后客户端通过send()方法发送数据,服务器端通过recevice()方法接受数据,通信完成后关闭DatagramSocket()。