<ruby id="bdb3f"></ruby>

    <p id="bdb3f"><cite id="bdb3f"></cite></p>

      <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
        <p id="bdb3f"><cite id="bdb3f"></cite></p>

          <pre id="bdb3f"></pre>
          <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

          <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
          <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

          <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                <ruby id="bdb3f"></ruby>

                ThinkChat2.0新版上線,更智能更精彩,支持會話、畫圖、視頻、閱讀、搜索等,送10W Token,即刻開啟你的AI之旅 廣告
                ![](https://img.kancloud.cn/41/e0/41e066af9a6c25a24868d9667253ec98_1241x333.jpg) ***** ## Python socket編程 ### IP地址 目的:用來標記網絡上的一臺電腦 ### windows和Linux查看網卡信息 - Linux中 ifconfig - windows中 ipconfig ### IP地址的分類 ![](https://img.kancloud.cn/45/ce/45ced18fe469e9e16b1cb41a26c418b6_1500x692.png) ### 端口 ![](https://img.kancloud.cn/be/1e/be1e9118e6a6bf5ae484be2deff07a94_830x340.png) ### 端口分類 1.知名端口(well known ports) - 80端口分配給HTTP服務 - 21端口分配給FTP服務 - 范圍是從0到1023 2.動態端口 動態端口的范圍是從1024-65535 ## socket簡介 ### TCP/IP協議 TCP/IP協議是Transmission Control Protocol/Internet Protocol的簡寫,即傳輸控制協議/因特網互聯協議,又名網絡通訊協議,是Internet最基本的協議、Internet國際互聯網絡的基礎,由網絡層的IP協議和傳輸層的TCP協議組成。 <br>TCP/IP 定義了電子設備如何連入因特網,以及數據如何在它們之間傳輸的標準。協議采用了4層的層級結構,每一層都呼叫它的下一層所提供的協議來完成自己的需求。 ### TCP/IP協議 TCP/IP網絡模型四層模型從根本上和OSI七層網絡模型是一樣的,只是合并了幾層 ![](https://img.kancloud.cn/d2/10/d2103ca1dface293f926a968e54731f5_692x306.png) ### socket socket又稱"套接字",應用程序通常通過"套接字"向網絡發出請求或者應答網絡請求,使主機間或者一臺計算機上的進程間可以通訊。白話說,socket就是兩個節點為了互相通信,而在各自家里裝的一部'電話'。 ### socket的使用 1.創建套接字 2.使用套接字收/發數據 3.關閉套接字 ### udp發送與接收程序 > udp發送數據 ~~~ import socket def main(): # 創建一個udp套接字 udp_socket = socket.socket(socket.AF_INET,socket.SOCK_DGRAM) udp_socket.sendto(b'nihao',('192.168.0.162',8080)) # 關閉socket udp_socket.close() if __name__ == '__main__': main() ~~~ > udp接收數據 1 創建套接字 2 綁定本地信息(IP和端口) 3 接受數據 4 打印數據 5 關閉套接字 ### 端口綁定問題 如果程序運行時,沒有綁定端口,那么操作系統會自動分配一個端口給程序。 而且同一端口,不能用兩次。 ### udp聊天器 1.創建套接字 套接字是可以同時收發數據的 2.發送數據 3.接收數據 ### TCP介紹 - TCP協議,傳輸控制協議,是一種面向連接的、可靠的、基于字節流的傳輸層通信協議 - TCP通信需要經過創建連接、數據傳送、終止連接三個步驟。 - TCP通信模型中,在通信開始之前,一定要先建立相關連接,才能發生數據。 ### TCP特點 - 面向連接 - 通信雙方必須先建立連接才能進行數據的傳輸 - 可靠傳輸 - TCP采用發送應答機制 - 超時重傳 - 錯誤校驗 - 流量控制和阻塞管理 ### TCP與UDP區別總結 1、TCP面向連接;UDP是無連接的,即發送數據之前不需要建立連接 2、TCP提供可靠的服務。也就是說,通過TCP連接傳送的數據,無差錯,不丟失,不重復,且按序到達;UDP盡最大努力交付,即不保證可靠交付 3、UDP具有較好的實時性,工作效率比TCP高,適用于對高速傳輸和實時性有較高的通信或廣播通信。 4、每一條TCP連接只能是點到點的;UDP支持一對一,一對多,多對一和多對多的交互通信 5、TCP對系統資源要求較多,UDP對系統資源要求較少。 ### UDP通信 ![](https://img.kancloud.cn/f7/b0/f7b0910148af2fb03dafd63418662965_971x659.png) ### TCP通信 ![](https://img.kancloud.cn/cc/92/cc92b5a1727a89a85846b4faa8659509_422x543.png) ### TCP客戶端 服務器端:就是提供服務的一方,而客戶端,就是需要被服務的一方 ### TCP客戶端構建流程 1.創建socket 2.鏈接服務器 3.接收數據(最大接收2014個字節) 4.關閉套接字 ### TCP服務端 1 socket創建套接字 2 bind綁定IP和port 3 listen使套接字變為可以被動鏈接 4 accept等待客戶端的鏈接 5 recv/send接收發送數據 ### TCP服務端為多個客戶端服務 ### 文件下載器 #### TCP客戶端 1.創建套接字 2.目的信息 服務器的ip port 3.連接服務器 4.輸入要下載的文件名稱 5.發送文件下載請求 6.接收對方發送過來的數據 7.接收到數據在創建文件 8.關閉套接字 #### TCP服務端 1 socket創建套接字 2 bind綁定IP和port 3 listen使套接字變為可以被動鏈接 4 accept等待客戶端的鏈接 5 recv/send接收發送數據
                  <ruby id="bdb3f"></ruby>

                  <p id="bdb3f"><cite id="bdb3f"></cite></p>

                    <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
                      <p id="bdb3f"><cite id="bdb3f"></cite></p>

                        <pre id="bdb3f"></pre>
                        <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

                        <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
                        <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

                        <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                              <ruby id="bdb3f"></ruby>

                              哎呀哎呀视频在线观看