UDP断点续传算法(支持NAT穿透)

上传人:枫** 文档编号:556994167 上传时间:2023-08-14 格式:DOC 页数:110 大小:580.50KB
返回 下载 相关 举报
UDP断点续传算法(支持NAT穿透)_第1页
第1页 / 共110页
UDP断点续传算法(支持NAT穿透)_第2页
第2页 / 共110页
UDP断点续传算法(支持NAT穿透)_第3页
第3页 / 共110页
UDP断点续传算法(支持NAT穿透)_第4页
第4页 / 共110页
UDP断点续传算法(支持NAT穿透)_第5页
第5页 / 共110页
点击查看更多>>
资源描述

《UDP断点续传算法(支持NAT穿透)》由会员分享,可在线阅读,更多相关《UDP断点续传算法(支持NAT穿透)(110页珍藏版)》请在金锄头文库上搜索。

1、package com.tontion.datasend;import java.awt.Rectangle;import java.awt.Robot;import java.awt.Toolkit;import java.awt.color.ColorSpace;import java.awt.event.InputEvent;import java.awt.event.KeyEvent;import java.awt.event.MouseEvent;import java.awt.event.MouseWheelEvent;import java.awt.image.BufferedI

2、mage;import java.awt.image.ColorConvertOp;import java.io.BufferedReader;import java.io.ByteArrayInputStream;import java.io.DataOutputStream;import java.io.File;import java.io.FileNotFoundException;import java.io.FileOutputStream;import java.io.IOException;import java.io.InputStream;import java.io.In

3、putStreamReader;import java.io.ObjectInputStream;import java.io.RandomAccessFile;import .DatagramSocket;import .InetAddress;import .InetSocketAddress;import .Socket;import .SocketException;import .UnknownHostException;import java.util.ArrayList;import java.util.Hashtable;import java.util.List;import

4、 java.util.Random;import java.util.Vector;import javax.imageio.ImageIO;import com.tontion.tools.LoadFileInfo;import com.tontion.tools.XtecssVo;import com.sun.image.codec.jpeg.JPEGCodec;import com.sun.image.codec.jpeg.JPEGEncodeParam;import com.sun.image.codec.jpeg.JPEGImageEncoder;/* * UDP传输主程序,可以发送

5、文字信息和发送文件 * author jack * date 2011-02-17 */public class MainUDP public static final long IPMSG_COMMASK = 0x00000fffL; / 命令运算标志public static final long IPMSG_OPTMASK = 0xfffff000L; / 操作运算标志public static final long IPMSG_NOOPERATION = 0x00000200L; / 复位清零标志public static final long IPMSG_MSG = 0x000002

6、01L; / 发送文字信息命令public static final long IPMSG_LOGIN = 0x00000202L; / 发送登录信息命令public static final long IPMSG_FILE_BEGIN = 0x00000203L; / 开始发送文件提示命令public static final long IPMSG_FILE_CONTINUE = 0x00000204L;/ 请求继续传送文件命令public static final long IPMSG_FILE_CONTENT = 0x00000205L; / 发送内容为文件包命令public stati

7、c final long IPMSG_FILE_RESEND = 0x00000206L; / 请求重发文件包命令public static final long IPMSG_FILE_EXIT = 0x00000207L; / 文件接收完成命令public static final long IPMSG_LOGOUT = 0x00000208L; / 用户退出提示命令public static final long IPMSG_USERLIST = 0x00000209L; / 发送在线用户列表命令public static final long IPMSG_INFORMREREGPORT

8、= 0x0000020AL; / 通知重新注册端口命令public static final long IPMSG_QUERYDIR = 0x0000020BL; / 获取目录命令public static final long IPMSG_DEMANDSENDFILE = 0x0000020CL; / 获取文件命令public static final long IPMSG_ONLINE = 0x0000020DL; / 在线命令public static final long IPMSG_REONLINE = 0x0000020EL; / 在线应答命令public static final

9、 long IPMSG_RELOGIN = 0x0000020FL; / 要求登录命令public static final long IPMSG_PENETRATE = 0x00000210L; / 穿透NAT命令public static final long IPMSG_DEMANDPENETRATE = 0x00000211L; / 请求通知指定用户发送穿透NAT命令public static final long IPMSG_INFORMPENETRATE = 0x00000212L; / 通知向指定用户发送穿透NAT命令public static final long IPMSG_

10、INFORMREGPORT = 0x00000213L; / 通知注册端口命令public static final long IPMSG_REGPORT = 0x00000214L; / 注册端口命令public static final long IPMSG_PORTMAPPING = 0x00000215L; / 请求穿透所有端口命令public static final long IPMSG_NOCOMMAND = 0x00000216L; / 空命令public static final long IPMSG_MAPOTHERPORT = 0x00000217L; / 空命令publ

11、ic static final long IPMSG_GETUSERLISTINFO = 0x00000218L; / 获取用户列表通知public static final long IPMSG_CONTINUEREQUSERLIST = 0x00000219L; / 请求继续发送用户列表public static final long IPMSG_CONTINUEUSERLIST = 0x0000021AL; / 继续发送用户列表public static final long IPMSG_LOGOUTINFO = 0x0000021BL; / 服务器发送特定用户已经退出通知public

12、static final long IPMSG_REMOTEVIEW = 0x0000021CL; / 远程操作命令public static final long IPMSG_REMOTEVIEWEND = 0x0000021DL; / 远程操作结束public static final long IPMSG_MOUSEKEY = 0x0000021EL; / 鼠标键盘操作/ public static final int IPMSG_NATMAXPACK = 32600; / 局域网内包大小public static final int IPMSG_NATMAXPACK = 2000; /

13、 局域网包大小/public static final int IPMSG_NATMAXPACK = 1350; / 局域网包大小public static final int IPMSG_NATSTOPPACKNUM = 20; / 局域网内暂停包大小/public static final int IPMSG_NATSTOPPACKNUM = 20; / 局域网内暂停包大小public static final int IPMSG_INTERMAXPACK = 512;/ internet网包大小public static final int IPMSG_INTERSTOPPACKNUM

14、= 20; / internet网暂停包大小public static final int IPMSG_MAXSENDFILECOUNT = 5;/ 同时发送的最大文件数public static final int IPMSG_MAXSENDPLFILECOUNT = 2;/ 同时发送的最大人员定位文件数private long serial = 0; / 消息序列号private int clientPort = 9102; / 本地端口private String clientIP = null; / 本地远程IP地址private int serverPort = 0; / 对方消息接收端口private int serverSocketPort = 0; / 服务器Socket端口private String serverIP = null; / 接收方IP地址private String userNo = none; / 用户编号private Hashtable sendFileHs = new Hashtable(); / 发送文件集合private Hashtable recvFileHs =

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 商业/管理/HR > 营销创新

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号