linux socket Ïê½â
Í·Îļþ£ºsys/socket.h
Ïà¹Ø½á¹¹Ì壺
struct sockaddr
{
unsigned short sa_family; //µØÖ·×å
char sa_data[14]; //14×Ö½ÚÐÒéµØÖ·
};
struct sockaddr_in
{
short int sin_family; //µØÖ·×å
unsigned short int sin_port; //¶Ë¿ÚºÅ
struct in_addr sin_addr; //IPµØÖ·
unsigned char sin_zero[8]; //Ìî³ä0ÒÔ±£³ÖÓëstruct sockaddrͬÑù´óС
};
struct in_addr
{
unsigned long s_addr; // that’s a 32-bit long, or 4 bytes
};
×¢£ºÕâÁ½¸öµØÖ·ÀàÐͽṹÌåÔÚÍ·ÎļþÖж¨Òå¡£
Ïà¹Øº¯Êý£º
<´ò¿ªÌ×½Ó×Ö>
int socket(int af,int type,int protocol); //·µ»ØsocketÌ×½Ó×Ö£¬ÔÚºóÃæµÄµ÷ÓÃʹÓÃËü¡£
afÖ¸¶¨Í¨ÐÅ·¢ÉúÇøÓò£¨µØÖ·×壩
UNIXϵͳÓУºAF_UNIX,AF_INET,AF_NSµÈ¡£
DOS¡¢WINDOWSÖÐÖ§³Ö£ºAF_INET£¨Íø¼ÊÍøÇøÓò£©
×¢£ºµØÖ·×åÓëÐÒé×åÏàͬ¡£
typeΪSOCK_STREAM£¨½¨Á¢TCP/IPÁ¬½ÓµÄÁ÷ʽÌ×½Ó×Ö£©»òSOCK_DGRAM£¨½¨Á¢ÎÞÁ¬½ÓµÄUDPÊý¾Ý±¨Ì×½Ó×Ö£©
×¢£º½øÐÐÊý¾Ý±¨·½Ê½µÄÊý¾Ý´«Êäsendto()ºÍrecvfrom()ʱҪÓÃSOCK_DGRAM ²»È»»á²úÉú´íÎó¡£
protocolͨ³£Îª0
<Ö¸¶¨±¾µØµØÖ·>
int bind(int sockfd,struct sockaddr *my_addr,int addrlen);
sockfdΪsocket·µ»ØµÄÌ×½Ó×Ö¡£
my_addrÖ¸Ïò°üº¬±¾»úIPµØÖ·ºÍ¶Ë¿ÚºÅµÈÐÅÏ¢µÄsockaddrÀàÐÍÖ¸Õë¡£
addrlenͨ³£Îªsizeof(struct sockaddr)
×¢£º¶¨Òå±¾»úµØַͨ³£Îª
struct sockaddr_in my_addr;
... ...
my_addr.sin_family=AF_INET;
my_addr.sin_port=htons(Ö¸¶¨¶Ë¿ÚºÅ); //htons()½øÐÐ×Ö½Ú˳Ðòת»»£¬×ª»»³ÉÍøÂç×Ö½ÚÓÅÏÈ˳Ðò¡£
my_addr.sin_addr.s_addr=INADDR_ANY; //INADDR_ANY×Ô¶¯»ñÈ¡±¾»úIPµØÖ·
<¼àÌýÇëÇó>
int listen(int sockfd,int backlog);
backlogÖ¸¶¨ÔÚÇëÇó¶ÓÁÐÖÐÔÊÐíµÄ×î´óÇëÇóÊý£¬½øÈë¶ÓÁеÄÇëÇ󽫵ȴýaccept()ËüÃÇ¡£
×¢£º·þÎñÆ÷³ÌÐòµÄͨ³£Ö´ÐÐ˳ÐòΪ sockfd=socket( ... ... ); bind(sockfd, ..., ...); listen(sockfd, ..., ...);
ÓÃSOCK_STREAMģʽÐèÒª accept()Á¬½ÓÇëÇó¡£
<½ÓÊÜÁ¬½ÓÇëÇó>
int accept(int sockfd,st
Ïà¹ØÎĵµ£º
×ÜÀÀ
ÓÃiptables -ADC À´Ö¸¶¨Á´µÄ¹æ
Ôò
£¬-AÌí¼Ó -Dɾ³ý -C ÐÞ¸Ä
iptables - [RI] chain rule num rule-specification[option]
ÓÃiptables - RI ͨ¹ý¹æÔòµÄ˳ÐòÖ¸¶¨
iptables -D chain rule num[option]
ɾ³ýÖ¸¶¨¹æÔò
iptables -[LFZ] [chain][option]
ÓÃiptables -LFZ Á´Ãû [Ñ¡Ïî]
iptables -[NX] chain
ÓÃ -NX ......
Ò»¡¢ÒýÑÔ£º
±¾ÎĵµµÄÄÚÈݴ󲿷ÝÄÚÈݶ¼ÊÇ´ÓÍøÉÏÊÕ¼¯¶øÀ´£¬È»ºóÅäºÏһЩеĽØͼ£¨Äں˰汾£ºV2.4.19£©¡£ÔÚÿһÅäÖÃÏîºó»áÓÐÒ»¸öÑ¡ÔñÖ¸ÄϵIJ¿·Ý£¬ÓÃÀ´Ö¸µ¼´ó¼ÒÔõôÑù¸ù¾Ý×Ô¼ºµÄÇé¿öÀ´×öÏàÓ¦µÄÑ¡Ôñ£»»¹ÓÐÔÚÿһ¸ö´óÏîºÍÎĵµµÄ×îºó»áÓÐÒ»¸ö¾Ñé̸£¬ËüÊÇһЩ¸ßÊÖÃÇÔÚÓ¦¶ÔÎÊÌâºÍ´¦ÀíÌØÓÐÓ²¼þʱµÄһЩ¾Ñ飨Õâ¸ö»¹µ ......
¸ÅÊö£º
ÏûÏ¢¶ÓÁÐÊÇlinuxϽø³Ì¼äͨÐŵÄÒ»ÖÖ·½Ê½£¬Ò»°ãÓÃÓÚ´«ËÍÉÙÁ¿Êý¾Ý£¬Èç¹û´óÁ¿Êý¾ÝÐèÒªÔÚ½ø³Ì¼ä¹²Ïí£¬Ôò¿ÉÒÔÓù²ÏíÄÚ´æ¡£
º¯Êý½Ó¿ÚʹÓãº
linuxÏÂÌṩÁËÒÔϼ¸¸ö½Ó¿Ú£¬ÓÃÓÚÏûÏ¢¶ÓÁеÄʹÓã¬Ê¹ÓÃÒ»°ã¹ý³ÌÈçÏ£º
1. µ÷ÓÃftok½Ó¿Ú²úÉúÒ»¸ökey.
ʹÓÃftokµÄºÃ´¦ÊÇ£¬·ÃÎÊͬһ¸öÏûÏ¢¶ÓÁеIJ»Í¬½ø³Ì¿ÉÒÔ ......
nutchµÄÅÀ³æºÍËÑË÷¿ÉÒÔ˵ÊÇ·ÖÀëµÄÁ½¿é£¬ÅÀ³æ¿ÉÒÔÊÇM/R×÷Òµ£¬µ«ËÑË÷²»ÊÇM/R×÷Òµ¡£ËÑË÷ÓÐÁ½ÖÖ·½Ê½£ºÒ»Êǽ«ÅÀ³æÊý¾Ý(»òÕß³ÆË÷ÒýÊý¾Ý)·ÅÔÚ±¾µØÓ²ÅÌ£¬½øÐÐËÑË÷¡£¶þÊÇÖ±½ÓËÑË÷HDFSÖеÄÅÀ³æÊý¾Ý¡£
ÕâÀï½éÉÜÈçºÎʹÓÃnutch-1.0µÄWEBÇ°¶Ë¼ìË÷±¾µØÅÀ³æÊý¾Ý£º
(1)NutchµÄËÑË÷¿ÉÒÔ¶ÀÁ¢ÓÚhadoop¼¯Èº£¬Ö»Òª½«ÅÀ³æÏÂÀ´µÄÊý¾Ýcopyµ½ÈκλúÆ ......
Linuxϵ¥»úÅäÖÃNutch
1.»·¾³½éÉÜ
²Ù×÷ϵͳ£ºRed hat linux 9
Nutch°æ±¾£ºnutch-0.9,ÏÂÔØ£ºhttp://apache.etoak.com/lucene/nutch/
JDK°æ±¾£ºJDK 1.6
Apache Tomcat°æ±¾£ºapache-tomcat-6.0.18
http://apache.etoak.com/tomcat/tomcat-6/v6.0.18/bin/apache-tomcat-6.0.18.tar.gz
2.ÅäÖÃÇ°Ìá
2.1 °²×°jdk ......