国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > Python > 正文

python網絡編程學習筆記(三):socket網絡服務器

2020-02-23 05:26:16
字體:
來源:轉載
供稿:網友

1、TCP連接的建立方法

客戶端在建立一個TCP連接時一般需要兩步,而服務器的這個過程需要四步,具體見下面的比較。

步驟TCP客戶端TCP服務器
第一步建立socket對象 建立socket對象
第二步調用connect()建立一個和服務器的連接設置socket選項(可選)
第三步綁定到一個端口(也可以是一個指定的網卡)
第四步偵聽連接

下面具體來講這四步的建立方法:

第一步,建立socket對象:這里與客戶端一樣,依然是:

s=socket.socket(socket.AF_INET,socket.SOCK_STREAM)

第二步,設置和得到socket選項

python定義了setsockopt()和getsockopt(),一個是設置選項,一個是得到設置。這里主要使用setsockopt(),具體結構如下:

setsockopt(level,optname,value)

level定義了哪個選項將被使用。通常情況下是SOL_SOCKET,意思是正在使用的socket選項。它還可以通過設置一個特殊協議號碼來設置協議選項,然而對于一個給定的操作系統,大多數協議選項都是明確的,所以為了簡便,它們很少用于為移動設備設計的應用程序。

optname參數提供使用的特殊選項。關于可用選項的設置,會因為操作系統的不同而有少許不同。如果level選定了SOL_SOCKET,那么一些常用的選項見下表:

    • 選項

      意義

      期望值

      SO_BINDTODEVICE

      可以使socket只在某個特殊的網絡接口(網卡)有效。也許不能是移動便攜設備

      一個字符串給出設備的名稱或者一個空字符串返回默認值

      SO_BROADCAST

      允許廣播地址發送和接收信息包。只對UDP有效。如何發送和接收廣播信息包

      布爾型整數

      SO_DONTROUTE

      禁止通過路由器和網關往外發送信息包。這主要是為了安全而用在以太網上UDP通信的一種方法。不管目的地址使用什么IP地址,都可以防止數據離開本地網絡

      布爾型整數

      SO_KEEPALIVE

      可以使TCP通信的信息包保持連續性。這些信息包可以在沒有信息傳輸的時候,使通信的雙方確定連接是保持的

      發表評論 共有條評論
      用戶名: 密碼:
      驗證碼: 匿名發表
      主站蜘蛛池模板: 中牟县| 贵港市| 宁强县| 西平县| 兴隆县| 景东| 泌阳县| 阳山县| 阿城市| 关岭| 阿拉善左旗| 哈密市| 延边| 阜阳市| 阳信县| 都安| 望江县| 新营市| 陆良县| 贺州市| 郓城县| 民勤县| 阜新| 佳木斯市| 东乌| 通渭县| 涿州市| 嘉善县| 广东省| 格尔木市| 菏泽市| 南阳市| 水富县| 监利县| 华安县| 喀喇沁旗| 仁化县| 白河县| 孟村| 会宁县| 四子王旗|
        <pre id="pkdck"></pre>