LinuxÏÂÍøÂç±à³Ì¸ÅÊö
LinuxÏÂÍøÂç±à³Ì¸ÅÊö
Ò»£®ÍøÂç֪ʶ¸ÅÊö
ÍøÂç³ÌÐòºÍÆÕͨ³ÌÐò×î´óµÄÇø±ðÊÇÍøÂç³ÌÐòÓÉÁ½²¿·Ö×é³É£º¿Í»§¶ËºÍ·þÎñÆ÷¶Ë¡£
¿Í»§¶Ë£ºÔÚÍøÂç³ÌÐòÖУ¬Èç¹ûÒ»¸ö³ÌÐòÖ÷¶¯ºÍÍâÃæµÄ³ÌÐòͨÐÅ£¬ÄÇôÎÒÃǾͰѸóÌÐò³ÆÎª¿Í»§¶Ë³ÌÐò¡£
·þÎñÆ÷¶Ë£ººÍ¿Í»§¶Ë¶ÔÓ¦µÄ³ÌÐò¼´Îª·þÎñÆ÷¶Ë£»±»¶¯µØµÈ´ýÍâÃæ³ÌÐòÀ´ºÍ×Ô¼ºÍ¨ÐŵijÌÐò¼´Îª·þÎñÆ÷¶Ë³ÌÐò¡£
TCP£º£¨Transmission Control Protocol ´«Êä¿ØÖÆÐÒ飩TCPÊÇÒ»ÖÖÃæÏòÁ¬½ÓµÄ¡¢¿É¿¿µÄ¡¢»ùÓÚ×Ö½ÚÁ÷µÄ´«Êä²ã£¨Transport layer£©Í¨ÐÅÐÒ飬ÓÉIETFµÄRFC 793˵Ã÷£¨specified£©¡£ÔÚ¼ò»¯µÄ¼ÆËã»úÍøÂçOSIÄ£ÐÍÖУ¬ËüÍê³ÉµÚËIJ㴫Êä²ãËùÖ¸¶¨µÄ¹¦ÄÜ£¬UDPÊÇͬһ²ãÄÚÁíÒ»¸öÖØÒªµÄ´«ÊäÐÒé¡£
UDP£º£¨User Datagram ProtocolÓû§Êý¾Ý°üÐÒ飩UDPÊÇ OSI ²Î¿¼Ä£ÐÍÖÐÒ»ÖÖÃæÏòÎÞÁ¬½ÓµÄ´«Êä²ãÐÒ飬Ìá¹©ÃæÏòÊÂÎñµÄ¼òµ¥²»¿É¿¿ÐÅÏ¢´«ËÍ·þÎñ¡£ËüÊÇIETF RFC 768ÊÇUDPµÄÕýʽ¹æ·¶¡£
¶þ£®Socket±à³Ì¸ÅÊö
1. ʲôÊÇsocket
SocketÊÇTCP/IPÍøÂçµÄAPI£¬Socket½Ó¿Ú¶¨ÒåÁËÐí¶àº¯Êý»òÀý³Ì£¬³ÌÐòÔ±¿ÉÒÔÓÃËüÃÇÀ´¿ª·¢TCP/IPÍøÂçÉϵÄÓ¦ÓóÌÐò¡£ÒªÑ§InternetÉϵÄTCP/IPÍøÂç±à³Ì£¬±ØÐëÀí½âSocket½Ó¿Ú¡£
Socket½Ó¿ÚÉè¼ÆÕß×îÏÈÊǽ«½Ó¿Ú·ÅÔÚUnix²Ù×÷ϵͳÀïÃæµÄ¡£ÍøÂçµÄ SocketÊý¾Ý´«ÊäÊÇÒ»ÖÖÌØÊâµÄI/O£¬SocketÒ²ÊÇÒ»ÖÖÎļþÃèÊö·û¡£SocketÒ²¾ßÓÐÒ»¸öÀàËÆÓÚ´ò¿ªÎļþµÄº¯Êýµ÷ÓÃSocket()£¬¸Ãº¯Êý·µ »ØÒ»¸öÕûÐ͵ÄSocketÃèÊö·û£¬ËæºóµÄÁ¬½Ó½¨Á¢¡¢Êý¾Ý´«ÊäµÈ²Ù×÷¶¼ÊÇͨ¹ý¸ÃSocketʵÏֵġ£
³£ÓõÄSocketÀàÐÍÓÐÁ½ÖÖ£ºÁ÷ʽSocket £¨SOCK_STREAM£©ºÍÊý¾Ý±¨Ê½Socket£¨SOCK_DGRAM£©¡£Á÷ʽÊÇÒ»ÖÖÃæÏòÁ¬½ÓµÄSocket£¬Õë¶ÔÓÚÃæÏòÁ¬½ÓµÄTCP·þÎñÓ¦Óã»Êý¾Ý±¨Ê½SocketÊÇÒ»ÖÖÎÞÁ¬½ÓµÄSocket£¬¶ÔÓ¦ÓÚÎÞÁ¬½ÓµÄUDP·þÎñÓ¦Óá£ÁíÍ⻹ÓÐÒ»ÖÖsocket£¬³ÆÎªÔʼsocket£¨SOCK_RAW£©¡£
2. ½¨Á¢socket
ΪÁ˽¨Á¢Socket£¬³ÌÐò¿ÉÒÔµ÷ÓÃSocketº¯Êý£¬¸Ãº¯Êý·µ»ØÒ»¸öÀàËÆÓÚÎļþÃèÊö·ûµÄ¾ä±ú¡£socketº¯ÊýÔÐÍΪ£º
int socket(int domain, int type, int protocol);
domainÖ¸Ã÷ËùʹÓõÄÐÒé×壬ͨ³£ÎªPF_INET£¬±íʾ»¥ÁªÍøÐÒé×壨TCP/IPÐÒé×壩£»type²ÎÊýÖ¸¶¨socketµÄÀàÐÍ£º SOCK_STREAM »òSOCK_DGRAM£¬Socket½Ó¿Ú»¹¶¨ÒåÁËÔʼSocket£¨SOCK_RAW£©£¬ÔÊÐí³ÌÐòʹÓõͲãÐÒ飻protocol¿É¸³ÖµÎªIPPROTO_UDP¡¢IPPROTO_TCP£¬µ«Í¨³£¸³ÖµÎª"0"£¬ÒòΪtype²ÎÊý
Ïà¹ØÎĵµ£º
Linux »ã±àÓïÑÔ¿ª·¢Ö¸ÄÏ
ÎĵµÑ¡Ïî
<tr
valign="top"><td width="8"><img alt="" height="1" width="8"
src="//www.ibm.com/i/c.gif"/></td><td width="16"><img alt="" width="16"
he ......
ÏÖÔÚ´ÓÐÂÕûÀíһϣ¬¾õµÃͦÓÐÓÃµÄ £¬Ìí¼ÓÁ˼¸Ïî·þÎñ
linuxÆô¶¯Ïî½éÉÜ
apmd ££ apmdÓÃÀ´¼àÊÓϵͳÓõç״̬£¬²¢½«Ïà¹ØÐÅϢͨ¹ýsyslogdдÈëÈÕÖ ......
¡¡¡¡Ê¹Óà Squid ´úÀí·þÎñÆ÷
¡¡¡¡Squid ÊÇÒ»ÖÖ´úÀí·þÎñÆ÷£¬ËüʵÏÖÁË¶Ô HTTP¡¢FTP ºÍ Gopher ÐÒéµÄ»º´æ¡£Squid Äܹ»Ê¹Ó÷ÃÎÊ¿ØÖÆÁÐ±í£¨Access Control List£¬ACL£©À´ÔÊÐí»ò¾Ü¾ø·ÃÎÊ¡£Squid ¾ß±¸Ç¿´óµÄ¿ÉÅäÖÃÄÜÁ¦ÒÔ¼°Â³°ôÐÔ£¬¶øÇÒÓû§»á·¢ÏÖ£¬¸ÃÈí¼þ·Ç³£ÈÝÒ×ѧϰ¡£¸üºÃµÄÊÇ£¬¿É½« Squid ÅäÖÃΪ͸Ã÷´úÀí£¬¼´ºÃÏñÓû§¸ù±¾²» ......
ÔÚ¹«Ë¾ÀïÃæÒ»Ö±¶¼Óõ½linux²Ù×÷ϵͳ£¬¶ø¹«Ë¾ÀïÃæÓõ½µÄÊÇcentos£¬ÎÒ×Ô¼ºµçÄÔÉϰ²×°µÄÊÇubuntu£¬¶øcentosÒ»°ãÓÃÓÚ·þÎñÆ÷£¬¶ÔÓÚѧϰlinuxÀ´ËµÓе㲻̫ʹÓã¬ËùÒÔÎÒ¿¼ÂǰÑubuntu»»³Éfedora£¬µ±È»²»ÊÇ˵ubuntu²»ºÃ£¬Ö»ÊÇÏë»»Ò»¸ö°æ±¾ÍæÍæ.^_^
¿ÉÊǽÓ×ÅÎÊÌâ¾ÍÀ´ÁË£¬fedoraÊÇÔõô¶¼°²×°²»ÉÏ£¬ÔÚÍøÉÏËÑË÷ÁËһЩ×ÊÁÏ£¬¶¼²»Ì«ÊÊÓ㬠......