網路程式設計基礎 林老師版 簡單的 套接字通訊(一)

2022-09-15 10:57:10 字數 1252 閱讀 4623

import socket

#1、買手機

phone=socket.socket(socket.af_inet,socket.sock_stream)

# print(phone)

#2、繫結手機卡

phone.bind(('127.0.0.1',8081)) #0-65535:0-1024給作業系統使用

#3、開機

phone.listen(5)

#4、等**鏈結

print('starting...')

conn,client_addr=phone.accept()

#5、收,發訊息

data=conn.recv(1024) #1、單位:bytes 2、1024代表最大接收1024個bytes

print('客戶端的資料',data)

conn.send(data.upper())

#6、掛**

conn.close()

#7、關機

phone.close()

import socket

#1、買手機

phone=socket.socket(socket.af_inet,socket.sock_stream)

# print(phone)

#2、撥號

phone.connect(('127.0.0.1',8081))

#3、發,收訊息

phone.send('hello'.encode('utf-8'))

data=phone.recv(1024)

print(data)

#4、關閉

phone.close()

1、客戶端端未啟動服務端狀態截圖

2、客戶端端啟動服務端狀態截圖

3、伺服器先啟動客戶端後啟動狀態截圖

4、伺服器端位啟動,客戶端啟動報錯截圖

網路基礎 網路程式設計套接字

埠號 port 是傳輸層協議的內容,標示了這台機器上唯一的程序。為什麼要有套接字,舉個例子 郵寄一封信,我們不僅需要知道郵編號碼,還需要知道收件人的門牌號,而此處的郵編號相當於ip位址,而埠號就相當於門牌號。我們已經知道,記憶體中的多位元組資料相對於記憶體位址有 端和小端之分,磁碟 件中的多位元組資...

網路套接字程式設計基礎

struct sockaddr和struct sockaddr in這兩個結構體用來處理網路通訊的位址。struct sockaddr sockaddr in在標頭檔案 include或 include中定義,該結構體解決了sockaddr的缺陷,把port和addr 分開儲存在兩個變數中,如下 s...

UNIX網路程式設計 基礎套接字程式設計

就像 unix網路程式設計 裡面說的,我們可以將tcp的連線看成乙個 系統,那麼我們的套接字位址結構,就是我們的 裡面號碼,和其他能確定我們身份資訊的集合。其中ipv4的,我們已經很熟悉,還有另外的,在ipv6如果系統支援長度字段,那麼sin6 len常值必須定義,在使用這一結構時我們必須分清到底,...