基于TCP协议的Socket编程 / 基于UDP协议的Socket编程
Posted 课工场
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了基于TCP协议的Socket编程 / 基于UDP协议的Socket编程相关的知识,希望对你有一定的参考价值。
目前较为流行的网络编程模型是客户机/服务器通信模式
客户进程向服务器进程发出要求某种服务的请求,服务器进程响应该请求。
如图所示,通常,一个服务器进程会同时为多个客户端进程服务,图中服务器进程B1同时为客户进程A1、A2和B2提供服务。
② Socket是连接运行在网络上的两个程序间的双向通信的端点。
③ 网络通讯其实指的就是Socket间的通讯。
④ 通讯的两端都有Socket,数据在两个Socket之间通过IO来进行传输。
使用Socket进行网络通信的过程
① 服务器程序将一个套接字绑定到一个特定的端口,并通过此套接字等待和监听客户的连接请求。
② 客户程序根据服务器程序所在的主机和端口号发出连接请求。
④ 客户和服务器通过读、写套接字进行通讯。
基于TCP协议的Socket编程
① 创建TCP服务端步骤:
a) 创建一个ServerSocket对象
b) 调用accept()方法接受客户端请求
c) 从Socket中获取I/O流
d) 对I/O流进行读写操作,完成与客户端的交互
e) 关闭I/O流和Socket
② 创建TCP客户端步骤:
a) 创建一个Socket对象
b) 从Socket中获取I/O流
c) 对I/O流进行读写操作,完成与服务端的交互
d) 关闭I/O流和Socket
注:客户端和服务端进行数据传输时,客户端的输入流对应服务端的输出流,客户端的输出流对应服务端的输入流。
示例:创建一个客户端与服务端通信的例子
包名:com.iotek.tcpsocket
服务端:
1
以上是关于基于TCP协议的Socket编程 / 基于UDP协议的Socket编程的主要内容,如果未能解决你的问题,请参考以下文章 网络编程的常识 基于tcp协议的编程模型 tcp协议和udp协议的比较 基于udp协议的编程模型 细说http - tcp - udp - socket - protobuf协议 |