• <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>

            單鏈DNA

            換了個地址:http://www.cnblogs.com/vizhen/

             

            Windows網(wǎng)絡程序設計基礎知識拾掇(三)

            1.異構環(huán)境下的網(wǎng)絡編程
                  不同的平臺以不同的方式存放一個二進制。最常見的兩種格式:大數(shù)在前的字節(jié)順序和小數(shù)在前的字節(jié)順序。
                  大字在前:將一個多字節(jié)數(shù)的高序字節(jié)存儲在內存的其實地址。而小數(shù)在前的字節(jié)順序剛好相反。      
                  套接字編程接口(Socket API)提供了4個函數(shù)解決本機與網(wǎng)絡的字節(jié)順序:
                   htons():短整數(shù)本機順序轉換為網(wǎng)絡順序,用于端口號。
                   htonl():長整數(shù)本機順序轉換為網(wǎng)絡順序,用于IP地址。
                   ntohs():短整數(shù)網(wǎng)絡順序轉換為本機順序,用于端口號。
                   ntohl():長整數(shù)網(wǎng)絡順序轉換為本機順序,用于IP地址。

                  點分十進制的IP地址的轉換:
                  unsigned long inet_addr(cost char *cp):
                            cp:點分十進制形式的IP地址。
                            返回值:網(wǎng)絡字節(jié)序的IP地址,無符號長整數(shù)

                  char * int_ntoa(struct in_addr  in):
                            in:包含長整數(shù)IP地址的in_addr結構變量。
                           返回值:點分十進制IP地址的字符串指針。

                 域名服務:
                       struct hostent *  gethodtbyname(const char * name);
                        name:站點主機域名字符串。
                        返回值:是指向hostent結構指針
                        hostent:包含主機名,主機別名數(shù)組、返回地址的類型(一般是AF_INET)


            2.阻塞與非阻塞
                  通信包括阻塞和非阻塞。
                  在阻塞模式下,利用TCP協(xié)議發(fā)送一個報文時,如果低層協(xié)議沒有可用空間來存放用戶數(shù)據(jù),則應用進程將阻塞等待直到協(xié)議有可用的空間。而非阻塞模式下調用將直接返回而不等待。在應用進程調用接收函數(shù)接收報文時,如果是在阻塞模式下,若沒有到達數(shù)據(jù),則調用將一直阻塞直到有數(shù)據(jù)到達或者出錯,而非阻塞模式下,將直接返回不等待。
                  對于UDP協(xié)議而言,由于UDP沒有發(fā)送緩存,因此UDP協(xié)議即使在阻塞模式下也不會發(fā)生阻塞。

            3.套接字及類型
                  socket(套接字)是網(wǎng)絡通信的基本構件,是可以被命名和尋址的通信端點,使用中的每一個套接字都有與其類型和與之相連的進程。
                  TCP/IP的socket提供三種類型的套接字:
                  *SOCK_STREAM(流式套接字):提供一個面向連接的、可靠的數(shù)據(jù)傳輸服務,數(shù)據(jù)無差錯、無重復、且按發(fā)送順序接收。內設流量控制,避免數(shù)據(jù)流超限。數(shù)據(jù)被看作是字節(jié)流,無長度限制。
                  *SOCK_DGRAM(數(shù)據(jù)報式套接字):提供一個無連接服務。數(shù)據(jù)報以獨立包形式被發(fā)送,不提供無錯保證。
                 *SOCK_RAW(原始套接字):該接口允許比較低層協(xié)議。

            posted on 2010-07-04 13:01 Geek.tan 閱讀(247) 評論(0)  編輯 收藏 引用

            導航

            統(tǒng)計

            公告

            coding是我的寂寞,我是誰的寂寞

            隨筆分類(40)

            隨筆檔案(48)

            搜索

            積分與排名

            最新評論

            評論排行榜

            精品久久久久久99人妻| 久久精品国产亚洲AV无码麻豆 | 国产精品99久久久久久www| www亚洲欲色成人久久精品| 一级做a爰片久久毛片16| 精品国产乱码久久久久软件| 一本一本久久a久久综合精品蜜桃| 久久久久久久97| 99久久精品这里只有精品| 中文字幕久久久久人妻| 久久免费美女视频| 久久99国产乱子伦精品免费| 中文国产成人精品久久亚洲精品AⅤ无码精品 | 午夜视频久久久久一区 | 久久99精品久久久久久9蜜桃| 亚洲精品视频久久久| 99久久这里只有精品| 亚洲αv久久久噜噜噜噜噜| 亚洲精品乱码久久久久久蜜桃| 久久久亚洲欧洲日产国码aⅴ| 久久中文精品无码中文字幕 | 久久男人中文字幕资源站| 无码人妻久久一区二区三区免费丨| 国产999精品久久久久久| 精品久久久久久成人AV| 人妻无码久久一区二区三区免费| 欧美黑人激情性久久| 中文字幕成人精品久久不卡| 久久ZYZ资源站无码中文动漫| 欧美久久久久久| 亚洲日本久久久午夜精品| 亚洲国产精品高清久久久| 久久青青草原精品国产软件| 72种姿势欧美久久久久大黄蕉| 久久久无码精品亚洲日韩蜜臀浪潮 | 久久91精品国产91久久麻豆| 97久久精品国产精品青草| 亚洲国产精品无码久久| 亚洲人成网亚洲欧洲无码久久| 日韩美女18网站久久精品| 无码国内精品久久人妻麻豆按摩|