TCP程式設計

2021-09-02 23:04:20 字數 1257 閱讀 2632

#匯入socket庫

import socket

#建立乙個socket

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

#af_inet指定使用ipv4協議,如果要用更先進的ipv6,就指定為af_inet6

#sock_stream指定使用面向流的tcp協議

#建立鏈結

s.connect(

('www.sina.com.cn',80

))#引數是乙個tuple,包含位址和埠號

#傳送資料

)#接受資料

buffer=[

]while

true

:#每次最多接受1k位元組

d = s.recv(

1024

)if d:

buffer

else

:break

data = b''

.join(

buffer

)#關閉鏈結

s.close(

)#網頁解析

header,html = data.split(b'\r\n\r\n',1

)print

(header.decode(

'utf-8'))

#接受資料寫入檔案

TCP程式設計

基於tcp 伺服器 程式設計步驟 1.建立乙個socket,用函式socket 2.繫結ip位址 埠等資訊到socket上,用函式bind 3.設定允許的最大連線數,用函式listen 4.等待來自客戶端的連線請求,用函式accept 5.收發資料,用函式send 和recv 或者read 和wri...

TCP程式設計

客戶端 匯入socket庫 import socket 建立乙個socket。af inet指ipv4協議,如果要用ipv6則指定af inet6.sock stream指定使用面向流的tcp協議 s socket.socket socket.af inet,socket.sock stream 建...

tcp程式設計

tcp連線屬於三次握手 syn 用於向對方發起連線請求的標誌,規定帶syn標誌的資料報佔乙個位元組的編號。j是順序號,ack 是用於應答的標誌,規定除了第一次的syn請求的資料報沒有ack,後面所有的資料報都帶有ack應答標誌。傳送j 1。j 1 5 j 6.三次目的 為了防止伺服器被惡意請求。資料...