亚洲激情专区-91九色丨porny丨老师-久久久久久久女国产乱让韩-国产精品午夜小视频观看

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

python socket是什么

發布時間:2022-01-24 16:01:09 來源:億速云 閱讀:205 作者:zzz 欄目:開發技術

這篇文章主要講解了“python socket是什么”,文中的講解內容簡單清晰,易于學習與理解,下面請大家跟著小編的思路慢慢深入,一起來研究和學習“python socket是什么”吧!

socket起源于Unix,而Unix/Linux基本哲學之一就是“一切皆文件”,對于文件用【打開】【讀寫】【關閉】模式來操作。socket就是該模式的一個實現,socket即是一種特殊的文件,一些socket函數就是對其進行的操作(讀/寫IO、打開、關閉)基本上,Socket 是任何一種計算機網絡通訊中最基礎的內容。

python socket是什么

1. 不同電腦上的進程之間如何通信

首要解決的問題是如何唯一標識一個進程,否則通信無從談起!在1臺電腦上可以通過進程號(PID)來唯一標識一個進程,但是在網絡中這是行不通的。 在網絡應用程序設計時,由于TCP/IP的核心內容被封裝在操作系統中,如果應用程序要使用TCP/IP,可以通過系統提供的TCP/IP的編程接口來實現。在Windows環境下,網絡應用程序編程接口稱作Windows Socket。為了支持用戶開發面向應用的通信程序,大部分系統都提供了一組基于TCP或者UDP的應用程序編程接口(API),該接口通常以一組函數的形式出現,也稱為套接字(Socket)。 其實TCP/IP協議族已經幫我們解決了這個問題,網絡層的“ip地址”可以唯一標識網絡中的主機,而傳輸層的“協議+端口”可以唯一標識主機中的應用進程(進程)。 這樣利用ip地址,協議,端口就可以標識網絡的進程了,網絡中的進程通信就可以利用這個標志與其它進程進行交互

注意:

?

  • 所謂進程指的是:運行的程序以及運行時用到的資源這個整體稱之為進程(在講解多任務編程時進行詳細講解)
  • 所謂進程間通信指的是:運行的程序之間的數據共享
  • 后面課程中會詳細說到,像網絡層等知識,不要著急

2. 什么是socket

socket(簡稱 套接字) 是進程間通信的一種方式,它與其他進程間通信的一個主要不同是:

它能實現不同主機間的進程間通信,我們網絡上各種各樣的服務大多都是基于 Socket 來完成通信的

例如我們每天瀏覽網頁、QQ 聊天、收發 email 等等

python socket是什么

3. 創建socket

在 Python 中 使用socket 模塊的函數 socket 就可以完成:

import socket
socket.socket(AddressFamily, Type)

說明:

函數 socket.socket 創建一個 socket,該函數帶有兩個參數:

  • Address Family:可以選擇 AF_INET(用于 Internet 進程間通信) 或者 AF_UNIX(用于同一臺機器進程間通信),實際工作中常用AF_INET
  • Type:套接字類型,可以是 SOCK_STREAM(流式套接字,主要用于 TCP 協議)或者 SOCK_DGRAM(數據報套接字,主要用于 UDP 協議)

創建一個tcp socket(tcp套接字)

import socket# 創建tcp的套接字s = socket.socket(socket.AF_INET, socket.SOCK_STREAM)# ...這里是使用套接字的功能(省略)...# 不用的時候,關閉套接字s.close()

創建一個udp socket(udp套接字)

import socket# 創建udp的套接字s = socket.socket(socket.AF_INET, socket.SOCK_DGRAM)# ...這里是使用套接字的功能(省略)...# 不用的時候,關閉套接字s.close()

說明

  • 套接字使用流程 與 文件的使用流程很類似

    1. 創建套接字
    2. 使用套接字收/發數據
    3. 關閉套接字

感謝各位的閱讀,以上就是“python socket是什么”的內容了,經過本文的學習后,相信大家對python socket是什么這一問題有了更深刻的體會,具體使用情況還需要大家實踐驗證。這里是億速云,小編將為大家推送更多相關知識點的文章,歡迎關注!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

西峡县| 永寿县| 邵东县| 麟游县| 张北县| 山东| 简阳市| 广州市| 昌图县| 武威市| 宜州市| 临夏县| 西峡县| 金沙县| 柏乡县| 莆田市| 京山县| 大关县| 贡觉县| 栾城县| 涞源县| 新源县| 镇原县| 太白县| 苍溪县| 鄢陵县| 方正县| 乌拉特后旗| 华宁县| 泸溪县| 浦东新区| 安泽县| 香港| 寿宁县| 黎城县| 独山县| 柳河县| 西平县| 湟中县| 方正县| 湖北省|