UDP数据报套接字编程

API介绍

对于UDP的Socket API来说,可以当成是一个Socket "文件",操作系统提供的一个API来操作网卡。

在java中提供了DatagramSocket 这样的API,用于发送和接收数据报

DatagramSocket构造方法:

注:无参版本一般用于客户端,有参版本用于服务端。

DatagramSocket其他方法:

DatagramPacket构造方法:

该方法是UDP用来发送接收的数据报:

DatagramPacket方法:

InetSocketAddress(SocketAddress)构造方法

接下来我们实现一个回显服务器(客户端请求和服务器响应),简单模拟一下真实服务器场景。

服务端的实现

Server:

一、先准备一个Socket类型,并且定义服务端的构造方法
二、准备一个执行服务器的方法,里面满足三个步骤:

(1)读取请求并且解析

(2)根据请求,计算响应

(3)把响应返回给客户端

(4)记录日志,观察执行结果

三、主函数创建服务器并执行

客户端的实现

Client:

一、准备一个Socket类型,用于发送数据报,再定义连接的服务器的IP和端口号

(由于当前是在本机运行,IP地址为"127.0.0.1")

二、定义执行方法,里面包含着三个步骤:

(1)输入需要发送的数据

(2)构造并发送数据报

(3)接收并显示服务器的响应

三、定义主函数执行

客户端和服务端的交互

因为服务器是7*24小时工作的,所以我们需要一个死循环来模拟一下服务器

客户端也可以使用死循环来模拟请求

服务端代码:

客户端代码:

具体展示:

相关推荐
IT小Qi6 小时前
iperf3网络测试工具
网络·python·测试工具·信息与通信·ip
以神为界6 小时前
Python入门实操:基础语法+爬虫入门+模块使用全指南
开发语言·网络·爬虫·python·安全·web
Tong Z6 小时前
TCP中的常见概念
网络·网络协议·tcp/ip
以太浮标7 小时前
华为eNSP模拟器综合实验之- IS-IS路由协议实践配置解析
网络协议·网络安全·华为·智能路由器·信息与通信
JS_SWKJ8 小时前
从 “物理孤岛” 到 “数字桥梁”:江苏深网科技以隔离技术筑牢网络安全防线
网络·科技·web安全
952369 小时前
网络原理(协议)
网络
M158227690559 小时前
8 通道 Modbus 模拟信号采集卡|工业传感器数据一键上云
网络
RTC老炮9 小时前
带宽估计算法(gcc++)架构设计及优化
网络·算法·webrtc
十年编程老舅10 小时前
深入 Linux 中断:原理详解 + 实战落地
linux·网络·linux内核·c/c++·中断
以神为界10 小时前
Web后端入门:PHP核心基础全解析(含安全要点)
网络·安全·web安全·php·web