22java中使用UDP TCP 协议做聊天工具
来源:互联网 发布:小微企业数据 编辑:程序博客网 时间:2024/05/14 10:09
1、UDP简介
a、UDP( User Datagram Protocol )协议是用户数据报,在网络中它与TCP协议一样用于处理数据包。在OSI模型中,在第四层——传输层,处于IP协议的上一层。
UDP是一种无连接的协议,每个数据报都是一个独立的信息,包括完整的源或目的地址,它在网络上以任何可能的路径传往目的地,因此能否到达目的地,到达目的地的时间以及内容的正确性都是不能被保证的。
b、为什么要使用UDP?
在网络质量令人不十分满意的环境下,UDP协议数据包丢失会比较严重。但是由于UDP的特性:它不属于连接型协议,因而具有资源消耗小,处理速度快的优点,
所以通常音频、视频和普通数据在传送时使用UDP较多,因为它们即使偶尔丢失一两个数据包,也不会对接收结果产生太大影响。比如聊天用的ICQ和OICQ就是使用的UDP协议。
2、UDP编程
a、DatagramSocket
b、DatagramPacket
UDP客户端:也是主要执行三个步骤。
1.创建DatagramSocket实例;
2.使用DatagramSocket类的send()和receive()方法发送和接收DatagramPacket实例;
3.最后使用DatagramSocket类的close()方法销毁该套接字。
1.向服务器发送信息;
2.在receive()方法上最多阻塞等待3秒钟,在超时前若没有收到响应,则重发请求(最多重发5次);
3.关闭客户端。
UDP服务器端:典型的UDP服务器要执行三个步骤,
1.创建一个指定了本地端口的DatagramSocket实例;
2.使用DatagramSocket的receive()方法接收一个来自客户端的DatagramPacket实例,
而这个DatagramPacket实例在客户端创建时就包含了客户端的地址,这样我们就知道回复信息要发送到哪里了;
3.使用DatagramSocket类的send()和receive()方法来发送和接收DatagramPacket实例。
- 22java中使用UDP TCP 协议做聊天工具
- Android 中使用TCP、UDP协议
- java:用UDP协议,开发一个聊天工具代码
- TCP和UDP两个协议在Java通信编程中是如何被使用的
- java封装TCP UDP协议
- java中进行socket编程实现tcp、udp协议总结
- java中TCP和UDP两种协议的区别?
- java做的聊天工具
- java做的聊天工具
- DNS使用UDP协议还是TCP协议
- JAVA基础 day25 网络编程 IP类 UDP,TCP传输学习 简易聊天工具 TCP并发学习
- java使用UDP协议
- 基于UDP协议的局域网网络聊天工具
- QQ使用了什么通讯协议?为什么要这样做?为什么采用 UDP 协议,而不采用 TCP 协议实现?
- QQ使用了什么通讯协议?为什么要这样做?为什么采用 UDP 协议,而不采用 TCP 协议实现?
- java 简易聊天工具(TCP)
- 聊聊iOS中TCP / UDP 协议
- DNS使用TCP还是UDP协议
- css3中rem 与px算法
- 数论模板,待更新。。。
- radiobutton+viewpager+Fragment切换过程取消预加载(延迟加载)
- 在VS2010解决方案中增加App.config
- uibutton 文字闪动问题
- 22java中使用UDP TCP 协议做聊天工具
- sql server 2008学习(二)基本查询
- Java基础
- 使用distcp并行拷贝大数据文件
- JavaScript实现加法运算例子(2种方法)
- 禁用ecshop缓存,关闭ecshop缓存功能
- mysql 带参数的游标
- python中if __name__ == '__main__': 的解析
- 选择排序法——1到1000