青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品

?第6章地址家族和名字解析
?
?要通過Wi n s o c k建立通信,必須了解如何利用指定的協議為工作站定址。本章將一一說明Wi n s o c k支持的協議以及各協議如何把一個指定家族的地址解析成網絡上一臺具體的機器。

6.1 IP
網際協議( Internet Protocol, IP)是一種用于互聯網的網絡協議.
從它的設計看來, I P是一個無連接的協議,不能保證數據投遞萬
無一失。兩個比它高級的協議( T C P和U D P)用于依賴I P協議的數據通信。

6.1.1 TCP
面向連接的通信是通過“傳輸控制協議”(Transmission Control Protocol, TCP)來完成的。
T C P提供兩臺計算機之間的可靠無錯的數據傳輸。應用程序利用T C P進行通信時,源和目標之間會建立一個虛擬連接。這個連接一旦建立,兩臺計算機之間就可以把數據當作一個雙向字節流進行交換。

6.1.2 UDP
無連接通信是通過“用戶數據報協議”(User Datagram Protocol, UDP)來完成的。U D P不保障可靠數據的傳輸,但能夠向若干個目標發送數據,接收發自若干個源的數據。
數據傳輸方法采用的是數據報。
T C P和U D P兩者都利用I P來進行數據傳輸,一般稱為T C P / I P和U D P / I P。Wi n s o c k通過A F _ I N E T地址家族為I P通信定址,

6.1.3 定址

Wi n s o c k中,應用通過S O C K A D D R _ I N結構來指定I P地址和服務端口信息,該結構的格式如下:

struct sockaddr_in
{
?short ?sin_family;
?u_short sin_port;
?struct in_addr sin_addr;
?char??? sin_zero[8];
}

。從本質上說,端口號分為下面這三類:“已知”端口、已注冊端口、動態和(或)私用端口。
■ 0 ~ 1 0 2 3由I A N A控制,是為固定服務保留的。
■ 1 0 2 4 ~ 4 9 1 5 1是I A N A列出來的、已注冊的端口,供普通用戶的普通用戶進程或程序使
用。
■ 4 9 1 5 2 ~ 6 5 5 3 5是動態和(或)私用端口。
普通用戶應用應該選擇1 0 2 4 ~ 4 9 1 5 1之間的已注冊端口,
S O C K A D D R _ I N結構的s i n _ a d d r字段用于把一個I P地址保存為一個4字節的數,它是無符號長整數類型。根據這個字段的不同用法,還可表示一個本地或遠程I P地址。I P地址一般是
用“互聯網標準點分表示法”(像a . b . c . d一樣)指定的,每個字母代表一個字節數,從左到右分配一個4字節的無符號長整數。最后一個字段sin_ zero ,只充當填充項的職責,以使S O C K A D D R _ I N結構和S O C K A D D R結構的長度一樣。

一個有用的、名為i n e t _ a d d r的支持函數,可把一個點式I P地址轉換成一個3 2位的無符號長整數。它的定義如下:
unsigned long inet_addr(
const char FAR *cp
);
這個函數把I P地址當作一個按網絡字節順序排列的3 2位無符號長整數返回
1. 特殊地址
對于特定情況下的套接字行為,有兩個特殊I P 地址可對它們產生影響。特殊地址I N A D D R _ A N Y允許服務器應用監聽主機計算機上面每個網絡接口上的客戶機活動。一般情況下,在該地址綁定套接字和本地接口時,網絡應用才利用這個地址來監聽連接。如果你有一個多址系統,這個地址就允許一個獨立應用接受發自多個接口的回應。特殊地址I N A D D R _ B R O A D C A S T用于在一個I P網絡中發送廣播U D P數據報。要使用這個特殊地址,需要應用設置套接字選項S O _ B R O A D C A S T。

2. 字節排序
針對“大頭”(b i g - e n d i a n)和“小頭”(l i t t l e - e n d i a n)形式的編號,不同的計算機處理器的表示方法有所不同,這由各自的設計決定。比如, Intel 86處理器上,用“小頭”形式來表示多字節編號:字節的排序是從最無意義的字節到最有意義的字節。在計算機中把I P地址和端口號指定成多字節數時,這個數就按“主機字節”(h o s t - b y t e)順序來表示。但是,如果在網絡上指定I P地址和端口號,“互聯網聯網標準”指定多字節值必須用“大頭”形式來表示
(從最有意義的字節到最無意義的字節),一般稱之為“網絡字節”(n e t w o r k - b y t e)順序。

我們打算演示一下如何利用上面描述的i n e t _ a d d r 和h t o n s 函數來創建
S O C K A D D R _ I N結構。

SOCKETADDR_IN?InternetAddr;
int nPortId = 5150;
InternetAddr.sin_family = AF_INET;
InternetAddr.sin_addr.s_addr = inet_addr("198.198.10.216");
InternetAddr.sin_port = htonl(nPortId);

6.1.4 創建套接字
創建一個I P套接字的好處是便于應用能夠通過T C P、U D P和I P協議進行通信。如要用T C P協議打開一個I P套接字,需調用帶有地址家族A F _ I N E T和套接字類型S O C K _ S T R E A M的s o c k e t函數或W S A S o c k e t函數,并把協議字段設成0,方式如下:
SOCKET s;
s = socket(AF_INET,SOCK_STREAM,0);

s = WSASocket(AF_INET,SOCK_STREAM,0,NULL,0,WSA_FLAG_OVERLAPPED);
要利用U D P協議打開I P套接字,只須指定套接字類型,用這個指定的套接字類型代替s o c k e t函數中的S O C K _ S T R E A M和上面的W S A S o c k e t調用。還可以打開一個套接字通過I P直接通信。這是把套接字類型設成S O C K _ R AW來完成的。

6.1.5 名字解析
Wi n s o c k應用打算通過I P和主機通信時,必須知道這個主機的I P地址。依用戶看來, I P地址是不容易記的。在指定機器時,許多人更愿意利用一個易記的、友好的主機名而不是I P地址。Wi n s o c k提供了兩個支持函數,它們有助于用戶把一個主機名解析成I P地址。
Wi n d o w s套接字g e t h o s t b y n a m e和WSAAsynGetHostByName API函數從主機數據庫中取回與指定的主機名對應的主機信息。兩個函數均返回一個H O S T E N T結構.


6.3 IPX/SPX
“互聯網包交換”(I P X)協議是一個常見協議,一般為承擔Novell NetWa r e客戶機/服務器聯網服務的計算機所用。。I P X提供兩個進程間的無連接通信;因此,如果一個工作站發出一個數據包,該協議無法保證這個數據包會準確無誤地投遞到目標地點。如果應用程序需要數據投遞保證,但仍堅持使用I P X,它就會選用一個比I P X高級的協議,比如說“順序分組交換”
(S P X)和SPX II協議,這兩個協議中, S P X包通過I P X發送。Wi n s o c k為應用程序提供了在Wi n d o w s平臺上通過I P X進行通信的能力(它們是Windows 95、Windows 98、Windows NT以及Windows 2000)

6.6 ATM
異步傳輸模式(AT M)協議是目前已有的最新協議之一, Windows 98和Windows 2000平臺上的Winsock 2均支持它。AT M通常用于L A N和WA N上的高速聯網,也用于各種類型的通信,比如說要求高速通信的語音、視頻和數據等。一般說來, AT M利用網絡上的虛擬連接(V C)來提供服務質量( Q O S)保證。正如大家即將看到的那樣,Wi n s o c k能夠通過AT M地址家族來使用AT M網絡上的虛擬連接。AT M網絡(如圖6 - 1所示)一般由通過交換機(它們將
AT M網絡橋接在一起)連接的端點(或計算機)構成。
針對AT M協議編程時,需要明白這幾點。首先, AT M是一個媒體類型,而不是一個真正的協議。也就是說, AT M類似于直接在以太網上寫入以太幀。和以太網一樣, AT M協議沒有提供流控制。它是一個面向連接的協議,要么提供消息模式,要么提供流模式。這還意味著如果數據不能快速發送出去,發送應用則可能溢出本地緩沖。同樣地,接收應用必須頻繁投遞收到的數據:否則,接收緩沖填滿之時,任何一個另外接入的數據都可能被丟棄。如果你的應用需要流控制,方法之一是在AT M上使用I P協議(它只是運行于AT M網絡上的I P協議)。
這樣一來,應用便緊跟在上面描述的I P地址家族之后。當然, AT M的確提供了比I P好的一些好處,比如說“根式多播方案”(第1 2章將對此進行說明);然而,要根據自己的應用需要來決定最適合你的那種協議。

6.8 小結
這一章論述了Wi n s o c k支持的協議地址家族,說明了各個家族特有的定址屬性。針對每個地址家族,我們還討論了如何創建套接字和如何設置套接字地址結構,以便開始通過協議進行通信。下一章,我們將描述適用于Wi n s o c k的基本通信技術,并把它們應用到本章討論的所有地址家族上。

Posted on 2006-09-06 20:04 艾凡赫 閱讀(416) 評論(0)  編輯 收藏 引用 所屬分類: 網絡編程
青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品
  • <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>
            亚洲午夜激情在线| 欧美日韩一区二区在线播放| 亚洲黄色在线看| 久久天堂精品| 久久久久一区二区三区四区| 欧美成人黄色小视频| 欧美伦理在线观看| 国产精品无码永久免费888| 国产视频综合在线| 亚洲国产精品成人va在线观看| 国语自产偷拍精品视频偷| 亚洲国产第一| 亚洲午夜一区二区三区| 久久久欧美精品sm网站| 亚洲国产视频直播| 亚洲女同精品视频| 欧美成人国产| 国产性天天综合网| 一区二区日本视频| 久久在线免费视频| 中文精品在线| 欧美搞黄网站| 亚洲精品一二| 久久爱另类一区二区小说| 久久一本综合频道| 国产精品美腿一区在线看| 91久久在线播放| 久久国产精品久久国产精品| 欧美韩国在线| 亚洲欧美日韩综合国产aⅴ| 99精品视频一区| 欧美一区二视频在线免费观看| 免费美女久久99| 亚洲欧美成人网| 狠狠色狠狠色综合日日小说| 欧美偷拍一区二区| 国产九区一区在线| 亚洲国产日本| 欧美综合国产| 日韩一级欧洲| 免费在线日韩av| 国外成人性视频| 午夜欧美理论片| 日韩视频一区二区在线观看 | 亚洲视频一二| 欧美国产高清| 亚洲国产精品欧美一二99| 久久久噜噜噜久久| 欧美一区午夜视频在线观看| 国产精品久久久久久影视| 99国产精品久久久| 亚洲第一在线视频| 开心色5月久久精品| 狠狠爱成人网| 久热精品视频在线观看一区| 欧美怡红院视频| 国产精品视频精品视频| 亚洲小说欧美另类婷婷| 日韩视频精品| 国产精品二区在线| 午夜精品一区二区在线观看| 亚洲视频在线观看网站| 国产精品老牛| 久久精品一本久久99精品| 久久av一区二区三区亚洲| 伊人春色精品| 亚洲国产老妈| 欧美日韩视频一区二区| 亚洲视频电影在线| 亚洲一区二区av电影| 国产精品永久免费在线| 久久精品成人| 老鸭窝91久久精品色噜噜导演| 亚洲全部视频| 一区二区三区四区五区精品视频 | 亚洲欧美国产一区二区三区| 一本色道久久99精品综合| 国产精品午夜春色av| 久久久精品国产99久久精品芒果| 久久久精品日韩欧美| 噜噜噜噜噜久久久久久91| 亚洲毛片视频| 国产精品99久久久久久www| 国产日产欧产精品推荐色| 你懂的国产精品永久在线| 欧美精品videossex性护士| 两个人的视频www国产精品| 亚洲国产你懂的| 99精品国产在热久久| 国产伦精品一区二区三| 欧美成人a视频| 欧美网站在线| 美女成人午夜| 国产精品福利网站| 欧美成人xxx| 国产噜噜噜噜噜久久久久久久久| 欧美电影电视剧在线观看| 欧美日韩一级黄| 欧美/亚洲一区| 国产精品视频导航| 亚洲国产成人一区| 国产日韩欧美在线看| 91久久国产自产拍夜夜嗨| 国产亚洲一区二区三区| 日韩亚洲精品在线| 在线日本成人| 久久av最新网址| 午夜精品视频| 欧美日韩亚洲一区二区| 免费日韩视频| 国产在线精品二区| 亚洲一区二区三区色| 日韩一级片网址| 久久综合久久久| 久久久国际精品| 国产精品久久久久久久浪潮网站| 亚洲成人在线视频网站| 蜜臀av一级做a爰片久久| 亚洲二区视频在线| 亚洲欧美综合网| 午夜精品短视频| 欧美日韩一级黄| 亚洲精品久久久久久下一站| 亚洲高清一区二| 久久裸体视频| 久久网站免费| 国产亚洲视频在线| 午夜激情久久久| 欧美在线观看一二区| 国产精品久久久久久户外露出| 亚洲麻豆一区| 亚洲深夜福利视频| 欧美日韩亚洲不卡| 一区二区欧美视频| 亚洲免费一在线| 国产精品日韩在线| 亚洲一区中文| 久久aⅴ国产欧美74aaa| 国产精品视频yy9299一区| 99视频精品全国免费| 亚洲欧美在线aaa| 国产日韩欧美亚洲| 久久久久高清| 亚洲成人资源| 99精品欧美一区二区三区综合在线 | 欧美精品一区二区精品网| 欧美福利视频在线观看| 亚洲高清在线观看| 欧美成人国产一区二区| 91久久精品一区二区别| 一本色道久久综合| 欧美色精品天天在线观看视频| 这里只有精品丝袜| 久久精品99国产精品| 在线精品亚洲一区二区| 欧美激情1区2区| 亚洲午夜三级在线| 久久精品免费电影| 亚洲日韩欧美视频| 国产精品成人在线| 久久国产精品黑丝| 亚洲国内自拍| 欧美在线一区二区| 亚洲激情国产精品| 国产精品日日做人人爱| 久久久精品五月天| 一本色道久久综合狠狠躁的推荐| 亚洲欧美国产77777| 在线不卡中文字幕播放| 欧美日韩免费在线视频| 欧美在线视频一区| 99精品视频一区| 免费亚洲电影在线观看| 亚洲一区区二区| 亚洲高清资源| 国产伦精品一区二区三区免费 | 久热精品在线视频| 亚洲一区精品视频| 亚洲国产精品va| 久久国产一区二区| 99v久久综合狠狠综合久久| 国产亚洲欧美一区二区三区| 欧美日韩国产美| 久久综合伊人77777蜜臀| 亚洲性av在线| 亚洲美女在线一区| 欧美国产日本高清在线| 久久精品国产96久久久香蕉| 在线视频亚洲| 91久久久久久久久久久久久| 国产一区二区三区丝袜| 国产精品高清免费在线观看| 你懂的一区二区| 久久久久久久久综合| 亚洲一区免费| 99国产麻豆精品| 亚洲清纯自拍| 亚洲国产岛国毛片在线| 蜜桃久久精品一区二区| 久久激情视频免费观看|