中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

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

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

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

安庆市| 囊谦县| 克什克腾旗| 望都县| 临泽县| 丰宁| 揭东县| 寿光市| 鄢陵县| 平泉县| 永胜县| 鱼台县| 视频| 上蔡县| 镇宁| 勃利县| 泗水县| 南投市| 襄垣县| 玉山县| 陆河县| 英山县| 许昌县| 岱山县| 鱼台县| 东至县| 鸡泽县| 丰台区| 平安县| 西宁市| 德保县| 宝应县| 大厂| 东方市| 房山区| 牟定县| 新野县| 山丹县| 抚松县| 南木林县| 印江|