<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    posts - 495,comments - 227,trackbacks - 0
    說明 下一篇
    由于我對TCP稍微熟悉,所以本系列文章只描述socket(套接字)接口的TCP編程

    在IT領域中,大家經常聽說Client/Server的概念,這個概念是描述了提供服務的一方(服務器)和接受服務的一方(客戶端)之間的拓撲結構。舉例來說,http://www.vckbase.com這個網站提供大家交流和娛樂的服務,他們的計算機對于我們而言就是服務器,而我們的計算機則是客戶端。一般而言,服務器功能比較強大,一個服務器能提供服務給多個客戶端。

    對于socket設計而言,我們往往也提到一個服務器端和客戶端的概念,但是它的概念和前面而言基本是不一樣的。這里的概念其實是指在開始通訊時誰先發起連接的過程。

    對于通訊的雙方而言,存在一個建立對話通道的過程,該過程的建立必然是一方主動發起的。我們稱呼主動建立鏈路的一方為客戶端,而另外一方為服務器端。(至少我個人這么稱呼,不知道業界是不是都這么說)

    在通訊過程中,服務器端必須在某個預先約定的端口等待其他主機建立鏈路,這個過程稱為偵聽(Listen)。客戶端主動建立鏈路的過程成為連接 (Connect)。當服務器端套接字接到一個連接請求后,會生成一個新的套接字。服務器端主機就通過這個套接字和客戶端主機通訊。

    在整個過程中,涉及到三個套接字,他們分別是服務器端套接字(我一般稱呼它為server socket)、客戶端套接字(一般我稱呼它為client socket)和服務器端套接字創建出來的套接字。在編程過程中,第三種套接字除了不會主動建立鏈路外,功能和client socket完全一致,因此我也把它稱為client socket。為了區別,對于客戶端的client socket,大家可以稱呼它為主動client socket(Active Client Socket, ACS),而對服務器端的那個客戶端套接字,則稱為被動client socket(Passive Client Socket, PCS)。一般情況下,我們沒有必要區分ACS和PCS,因為PCS的功能是ACS的一個部分,ACS只多一項功能而已。在后文中,我將不區分這兩種 client socket

    對于server socket, 它有如下功能:

    1. 等待客戶端建立連接(listen)
    2. 當客戶端建立發送連接請求時,能接受請求,完成鏈路建立(accept)
    3. 關閉(close)

    對于client socket,它有如下功能:

    1. 建立鏈路(connect)
    2. 發送數據(send)
    3. 接收數據(recv)
    4. 關閉(close)

    一個簡單的通訊過程應該這樣:

    • server socket開始偵聽(listen)
    • client socket開始連接(connect)
    • server socket接受連接(accept)
    • ACS和PCS開始互相發送數據(send/recv)
    • ACS或PCS關閉鏈路(close)
    • server socket關閉(close)

    本系列將根據以上過程介紹socket編程的方方面面。由于阻塞套接字相對簡單,我會先從阻塞套接字(也就是伯可力套接字)編程開始,之間會穿插一些多線程的知識。很多方面我也沒用過,所以有些東西只能邊試邊寫,和大家探討。

    posted on 2008-07-03 15:15 SIMONE 閱讀(558) 評論(0)  編輯  收藏 所屬分類: C++
    主站蜘蛛池模板: 久久久久亚洲精品成人网小说| 天天天欲色欲色WWW免费| 亚洲女人被黑人巨大进入| 亚洲精品永久在线观看| 久久久久免费看黄A片APP| 亚洲冬月枫中文字幕在线看| 一区二区免费视频| 亚洲精品国产第1页| 亚洲成人免费电影| 亚洲一区二区三区高清不卡 | 亚洲精品无码成人片在线观看| 在线视频亚洲一区| 国产在线19禁免费观看| 深夜特黄a级毛片免费播放| 亚洲国产天堂久久综合| 最近免费中文字幕中文高清| 亚洲av永久无码精品网站 | 亚洲制服丝袜在线播放| 182tv免费视视频线路一二三| 亚洲av无码国产精品色午夜字幕 | 四虎永久免费影院在线| 中国内地毛片免费高清| 亚洲 欧洲 日韩 综合在线| 亚洲线精品一区二区三区影音先锋| 波多野结衣免费在线| 三年片在线观看免费西瓜视频| 亚洲日韩一区二区一无码| 亚洲国产成人私人影院| 亚洲福利视频一区二区| 无码人妻一区二区三区免费| 免费人成毛片动漫在线播放| 国产精品亚洲一区二区三区久久 | 国产亚洲蜜芽精品久久| 亚洲二区在线视频| 亚洲av永久无码精品国产精品| 国产在线19禁免费观看国产| 中文字幕影片免费在线观看| 高清一区二区三区免费视频| 一级做a爰片性色毛片免费网站 | 羞羞视频在线免费观看| wwwxxx亚洲|