linux UDP client½ÓÊÕ²»µ½Êý¾Ý
ÎÒÔÚlinuxÏÂдÁ˸öUDPµÄserverºÍclientµÄ´úÂ룬
ÏÖÔÚ³öÁËÕâÑùÒ»¸öÎÊÌ⣬
serverÊÕµ½ÁËclientµÄÊý¾Ý£¬²¢»Ø¸´ÁË£¬µ«ÊÇclientÒ»Ö±ÊÕ²»µ½server»Ø¸´µÄÄÚÈÝ£¬£¬ºóÀ´ÎÒÓÃ×¥°ü¹¤¾ß½¨Á¢ÁËÒ»¸öserverÀ´Á¬½Ó֮ǰµÄclient£¬·¢ÏÖ½ÓÊÕµ½µÄclientµÄ¶Ë¿Ú²¢·ÇÎÒ¿ªÊ¼É趨µÄ¶Ë¿Ú£¬
¾ßÌåÈçÏ£º
client½¨Á¢Ò»¸ösocket²¢ÉèÖÃÁ˶˿ÚΪ8019£¬ipΪ192.192.192.210£¬ÓɸÃsocket¶Ôserver·¢ËÍÊý¾Ý£¬È»ºóÓÖʹÓøÃsocketÀ´½ÓÊÜserver»ØÀ¡µÄÊý¾Ý£¬µ«ÊÇserver»ØÀ¡µÄ¶Ë¿Ú²¢·ÇΪ8019£¬ËùÒÔclient²¢Ã»ÓÐÊÕµ½serverµÄÊý¾Ý¡£
ÇëÎÊÔõô½â¾ö£¡
×¢ÒâÍøÂç×Ö½ÚÐò
client¶Ë´úÂëÈçÏ£º
fd=socket(AF_INET,SOCK_DGRAM,0);
inetaddr=inet_addr(IP);
recv_sockaddr.sin_family=AF_INET; recv_sockaddr.sin_addr.s_addr=inetaddr;
recv_sockaddr.sin_port= htons(port);
recvfrom_socket(recv_sock_fd,sock_buf,sizeof£¨sock_buf£©,(sockaddr_t *)(&recv_sockaddr),&sock_len);
sendto_socket(recv_sock_fd, sock_buf, len, (sockaddr_t *)(&recv_sockaddr),sizeof(sockaddr_t));
ÒªÓÃbind½«¶Ë¿ÚºÅ°ó¶¨µ½¿Í»§¶ËÉÏ
¿Í»§¶ËÐèÒªbind£¿
server¶Ë²ÅÒªbind°É¡£
·þÎñÆ÷·´À¡µÄ¶Ë¿ÚºÅÊǶàÉÙ
ͨ¹ý×¥°ü¹¤¾ß·¢ÏÖ£¬Ã¿´Îclient·¢Ë͹ýÀ´µÄÊý¾Ý¶Ë¿Ú²»È·¶¨
·þÎñ¶ËbindµÄ¶Ë¿ÚΪ801
Ïà¹ØÎÊ´ð£º
ÎÒÓõÄÊÇͼÐνçÃæµÄlinux5...
µ«ÊÇÎÒ²»»áÔÚlinuxϽ¨Á¢cÎļþ»¹ÓÐÓÃʲôÃüÁîÀ´Ö´ÐÐcÎļþô?
ÎÒµÄ×ÀÃæÖ»ÓÐComputer people's Home ºÍ Trash
´óϺÎÒqq304199303ÄÜÖªµÀÏÂô?
ÒýÓÃ
´óϺÎÒqq304199303Ä ......
ÄÄλ´óÏÀ×ö¹ýÄÚºË̬µÄUDPͨÐŰ¡£¿
СµÜʹÓÃstruct socket *sock½á¹¹ÄܽøÐÐͨÐÅÁË£¬µ«ÊÇÎÞ·¨ÏñÓû§Ì¬³ÌÐòÒ»ÑùʹÓÃpoll»òÕßselect¡£
ÓÐд¹ýµÄ´óÏÀÄÜ·ñ¸øµãÌáʾ»òÕß´úÂëÆ¬¶Î°¡£¿
ÏÈл¹ýÀ²£¡£¡£¡
û×ö¹ý¡£ ......
ÎÒдÁËÒ»¸öOCCIµÄ³ÌÐò,¸Ã³ÌÐòÔÚlinuxÏÂÃæÔËÐÐÒ»ÇÐÕý³£,µ«ÊÇͬÑùµÄ´úÂëµ½AIXÏÂÔÙ±àÒëÔËÐоͳöÎÊÌâÁË.¶øÇÒÒ»´ÎÌá½»ÊýÁ¿µÄ²»Í¬,±¨µÄ´íÒ²²»Í¬.
C/C++ code:
#include <iostream>
#include <occi.h>
u ......
#include "csapp.h"
#define MAX_ARG_NUM 10
#define MAXLINE 512
#define PEER_PORT 1719
struct Udp2SipMsg
{
int argc;
c ......