iOS UDP编程
2015-10-17 20:08
579 查看
UDP(User Data Protocol,用户数据报协议)是与TCP相对应的协议。它是面向非连接的协议,它不与对方建立连接,而是直接就把数据包发送过去! UDP适用于一次只传送大量数据、对可靠性要求不高的应用环境。
tcp协议和udp协议的差别
是否连接 面向连接 面向非连接
传输可靠性 可靠 不可靠
应用场合 传输少量数据 大量数据
速度 慢 快
UDP有TCP望尘莫及的速度,所以它的应用面也很广。上一篇写的TCP主要是面向连接,传输次序不会乱,但UDP就不给你保证了。但是它免去了三次握手四次挥手,速度自然快,代码量也会小一些。
以下是核心代码:
UDPSocket的使用
1.创建UDP套接字对象
_recevSocket = [[AsyncUdpSocket alloc]initWithDelegate:self];
_sendSocket = [[AsyncUdpSocket alloc]initWithDelegate:self];
[_recevSocket bindToPort:0x1234 error:nil];
[_sendSocket bindToPort:0x4321 error:nil];
//监听
[_recevSocket receiveWithTimeout:-1 tag:100];
2.UDPSokect代理
收到了对方传过来的消息
- (BOOL)onUdpSocket:(AsyncUdpSocket *)sock didReceiveData:(NSData *)data withTag:(long)tag fromHost:(NSString *)host port:(UInt16)port
[_recevSocket receiveWithTimeout:-1 tag:100];
发送消息成功
- (void)onUdpSocket:(AsyncUdpSocket *)sock didSendDataWithTag:(long)tag
3.UDPSoket发送消息
[_sendSocket sendData:[contentField.text dataUsingEncoding:NSUTF8StringEncoding] toHost:ipField.text port:0x1234 withTimeout:-1 tag:200];
我还是写了一个小Demo,这次我等了一下,在资源中显示出来了 ^_^。
http://download.csdn.net/detail/u010576399/9189721
tcp协议和udp协议的差别
是否连接 面向连接 面向非连接
传输可靠性 可靠 不可靠
应用场合 传输少量数据 大量数据
速度 慢 快
UDP有TCP望尘莫及的速度,所以它的应用面也很广。上一篇写的TCP主要是面向连接,传输次序不会乱,但UDP就不给你保证了。但是它免去了三次握手四次挥手,速度自然快,代码量也会小一些。
以下是核心代码:
UDPSocket的使用
1.创建UDP套接字对象
_recevSocket = [[AsyncUdpSocket alloc]initWithDelegate:self];
_sendSocket = [[AsyncUdpSocket alloc]initWithDelegate:self];
[_recevSocket bindToPort:0x1234 error:nil];
[_sendSocket bindToPort:0x4321 error:nil];
//监听
[_recevSocket receiveWithTimeout:-1 tag:100];
2.UDPSokect代理
收到了对方传过来的消息
- (BOOL)onUdpSocket:(AsyncUdpSocket *)sock didReceiveData:(NSData *)data withTag:(long)tag fromHost:(NSString *)host port:(UInt16)port
[_recevSocket receiveWithTimeout:-1 tag:100];
发送消息成功
- (void)onUdpSocket:(AsyncUdpSocket *)sock didSendDataWithTag:(long)tag
3.UDPSoket发送消息
[_sendSocket sendData:[contentField.text dataUsingEncoding:NSUTF8StringEncoding] toHost:ipField.text port:0x1234 withTimeout:-1 tag:200];
我还是写了一个小Demo,这次我等了一下,在资源中显示出来了 ^_^。
http://download.csdn.net/detail/u010576399/9189721
相关文章推荐
- 解决三星 BIOS 模式没有 Fast Bios Mode选项 U盘动项问题
- 中国的手写输入法iOS8.1在崩溃
- iOS基础知识:if 语句以及if语句的使用注意事项
- ios-屏幕适配masonry的使用
- iOS 如何调用打电话发短信等功能
- 界面多个小view布局的九宫格算法
- IOS绘制图片水印以及文字水印
- 整状态栏颜色
- ios常用第三方框架
- iOS项目实现SVN代码管理方法③(Part 三)
- iOS控件 不能够交互的几种情况
- iOS 开发常用第三方框架
- iOS Notification 的使用
- IOS开发:NSUserDefaults
- ios手势复习值之换图片-转场动画(纯代码)
- iOS Core Animation学习总结(2)--实现自定义图层
- iOS8以后第三方键盘,获取高度为0的问题
- IOS NSUserDefaults 的用法
- IOS显示九宫格列表
- ios中对堆栈的理解及两者件的区别