Linux下的UDP编程
一、引言
UDP是TCP/IP协议中的传输层协议的一种,本文介绍了在Linux下编写基于UDP协议的Client/Server模型的程序的方法,并给出了一个echo Client/Server例子程序。
二、UDP协议简介
UDP是一种简单的传输层协议,在RFC768中有详细描述。UDP协议是一种非连接的、不可靠的数据报文协议,完全不同于提供面向连接的、可靠的字节流
的TCP协议。虽然UDP有很多不足,但是还是有很多网络程序使用它,例如DNS(域名解析服务)、NFS(网络文件系统)、SNMP(简单网络管理协
议)等。
通常,UDP Client程序不和Server程序建立连接,而是直接使用sendto()来发送数据。同样,UDP
Server程序不需要允许Client程序的连接,而是直接使用recvfrom()来等待直到接收到Client程序发送来的数据。
这里,我们使用一个简单的echo
Client/Server程序来介绍在Linux下编写UDP程序的方法。Client程序从stdin读取数据并通过网络发送到Server程
序,Server程序在收到数据后直接再发送回Client程序,Client程序收到Server发回的数据后再从stdout输出。
三、UDP Server程序
1、编写UDP Server程序的步骤
(1)使用socket()来建立一个UDP socket,第二个参数为SOCK_DGRAM。
(2)初始化sockaddr_in结构的变量,并赋值。sockaddr_in结构定义:
struct sockaddr_in {
uint8_t sin_len;
sa_family_t sin_family;
in_port_t sin_port;
struct in_addr sin_addr;
 
相关文档:
下载地址:http://www.fcitx.org/main/?q=node/9
Version-版本 Update─更新日期备注
fcitx-3.4.tar.bz2
2006-09-21
最新稳定版
fcitx-060910.tar.bz2
2006-09-10
测试版
fcitx-3.3.1-bin.tar.bz2
2006-08-30
稳定版(预编译包IA32)
选择最新版。。
源码包的安装;
[root@localhost beinan]# tar jxvf fci ......
通过dd命令可以把指定的输入文件拷贝到指定的输出文件中,并且在拷贝过程中可以进行格式转换。dd命令的使用举例如下:
# dd if = /dev/had of=had.bak bs=512 count=1
dd命令的各参数解释如下:
if = file 输入文件名;
of = file 输入文件名;
bs = n 设置输入、输出块的大小为n字节;
count = blocks 只拷贝输入的 ......
14)Mice 鼠标
根据自己的鼠标类型选择。
15)Video for Linux Linux视频
根据系统中的音/视频捕捉设备选择。
16)Joystick support 操纵杆
根据系统中的游戏杆设备选择
17)Ftape,the floopy tape device driver Ftape设备驱动
Ftape (QIC-80/Travan ......
mount -t iso9660 /dev/cdrom /mnt/cdrom 挂光驱
mount -t vfat /dev/fd0 /mnt/floppy 挂软驱 (文件内型可以自己选)
mount -t vfat -o rw,utf8,umask=000 /dev/sda1 ......