JAVA初学者如何实现基于UDP和TCP协议的网络编程

首先,我们需要先了解UDP协议、TCP协议的概念:

一、UDP协议:用户数据报协议,是一种无连接协议

二、TCP协议:文件传输协议,是一种面向连接的协议

他们都位于TCP/IP模型中的传输层,为整个网络体系结构建立通信服务,是两种不同的通信协议

 

一点介绍先到,随后代码如龙(以传输文本数据为例)

基于无连接的UDP协议:

语义结构:

发送端:输入消息——拆分消息——按类的结构打包消息——发送消息

DatagramPacket类似于集装箱,DatagramSocket类似于码头

所谓无连接,所以发送方只需要知道对方IP(这里用本机地址)和端口号,也就是socket类,socket由地址(IP)和端口号(port)组成 ,便可以发送消息,不用事先建立链接,如QQ

接收端:找到消息端口——制定容器——接收——拆分

 

基于面向连接的TCP协议:需要双方先建立连接,后通信,如打电话。

客户发起连接——客户发送请求——服务器响应请求

总结:主要区别

UDP不需要事先建立连接,无服务器客户端之分,只有发送端和接收端,协议不可靠,数据传输采用DatagramPacket(数据报)

TCP需要事先建立连接,有服务器客户端之分,JAVA网络编程中,需先运行服务器才能运行客户端,协议可靠,数据传输采用IO流;

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值