一、UDP网络编程概述 采用TCP协议通信时,客户端的Socket必须先与服务器建立连接,连接建立成功后,服务器端也会持有客户端连接的Socket,客户端的Socket与服务器端的Socket是对应的,它们构成了两个端点之间的虚拟通信链路。与TCP通信不同,UDP是面向无连接的、不可靠的基于数据包....
分类:
编程语言 时间:
2014-06-21 09:11:43
阅读次数:
388
单播模型echoserver.c 1 #include 2 3 #define PORT 8080 4 #define LEN_BUF 255 5 6 void do_business(int sockfd); 7 8 int main(void) 9 {10 //1.创建sock...
分类:
其他好文 时间:
2014-06-18 17:17:03
阅读次数:
268
三、组播模型muticast.c 1 #include 2 3 #define PORT 8088 4 5 #define MULTIIP "225.0.0.1" 6 7 int main(int argc,char **argv) 8 { 9 if(argc!=2)10 {...
分类:
其他好文 时间:
2014-06-18 16:23:20
阅读次数:
234
广播模型broadcast.c 1 #include 2 3 #define PORT 8088 4 5 int main(int argc,char **argv) 6 { 7 if(argc!=2) 8 { 9 printf("%s \n",argv[0])...
分类:
其他好文 时间:
2014-06-18 15:55:32
阅读次数:
189
网络编程1.TCP/UDP特点1.TCP1.面向连接(流式套接字SOCK_STREAM)2.数据完整安全,可靠,有序PS:数据完整不丢失,有序,数据完整采用CRC循环冗余校验,数据不丢失采用重传机制和超时机制,有序的发送端的拆分编号,接收端排序组合。若在某一段时间内接收端到的为两个一样的数据,则选择...
分类:
其他好文 时间:
2014-06-18 15:45:40
阅读次数:
295
首先对文件按内容分块(有块大小的约束),然后对于每个chunk构造单独的一个UDP 数据报进行传输,在应用层的开始是自定义的包头,有块号,块长度,块指纹等元数据信息,这些信息便于接收端能够按序正确接收。
/*--vonzhou
---this project is to upload file after chunking using
rabin fingerprint, h...
分类:
其他好文 时间:
2014-06-18 12:27:16
阅读次数:
171
当一个到达的UDP数据报超过应用程序提供的缓冲区容量时,recvmsg在其 msghdr结构的msg_flags成员上设置MSG_TRUNC标志。
所有支持msghdr结构及其msg_flags成员的实现都提供这种通知。但并非所有实现都以同一种方式处理超过预期长度的UDP数据报
存在三种情况:
1.丢弃超出部分的字节并向应用进程返回MSG_TRUNC标志,调用recvmsg可以接收这个标志
...
分类:
其他好文 时间:
2014-06-18 00:31:02
阅读次数:
368
贴一下代码,例子是从别人那里直接抄来的:-module(myudp).-export([start/0, client/1]).%% Serverstart() -> spawn(fun() -> server(4000) end). server(Port) -> {ok, So...
分类:
其他好文 时间:
2014-06-17 21:07:49
阅读次数:
225
这次说说「端口」和「端口号」。平时经常会听人说「打开了80号端口」,为了安全「不要打开多余的端口」等等。那么,这里的端口或者端口号是什么呢?首先,「端口」是TCP或者UDP上使用的概念,经常被比喻成「窗口」。而且,端口号也被比喻成窗口编号。举个例子,比如去邮局汇款时,并不是每个窗口都可以汇款的,只有...
分类:
系统相关 时间:
2014-06-17 13:14:31
阅读次数:
416
这篇文章相当低级,但相当重要!
我们周围一切几乎都依赖于把事情抽象成低等级,并在某一点把它具体化,在一些设计概念中,接口层十分清晰并且目标很集中,应用程序不用考虑操作系统如何工作,操作系统也不用考虑硬件如何工作,OSI模型的第4层不需要考虑第三层如何工作。所以我们只需要集中精力在某一层,就当下面的层正常工作,但这样能行吗?如果你写一个应用,你最好知道OS是怎么样工作的,并且要考虑数据库如...
分类:
其他好文 时间:
2014-06-16 19:15:26
阅读次数:
273