
本文共 9227 字,大约阅读时间需要 30 分钟。
Socket���������������������������������������TCP/IP���������������������������������������������������������������
Socket������������������������������������������������������������������������������������������������������������������
TCP���Transmission Control Protocol���������������������������������������eg:������������������������������������������������������������&������������������������������������������TCP������������Web���������������������������������
UDP���User Datagram Protocol���������������������������������������������������������������������������������������������������������������������������������������������(���������)���������������������������������������������������UDP������������������������ (DNS)���������������IP������(VoIP)���
������TCP������������Socket
TCP������������������������������������������������������������������������������������������
���������������
���������
import socket���sk = socket.socket() # ���������������sk.bind(('127.0.0.1', 4444)) # ���������������������������sk.listen() # ������������count, addr = sk.accept() # ������������������������count������client������server���������������������addr������client���IP������msg = count.recv(1024) # ���������������������������������������1024���������count.send(b'hi') # ���������������������������������������������������bytes���������������print(msg) # ������������������count.close() # ������������������������sk.close() # ������������������������
���������
import socket���sk = socket.socket() # ���������������sk.connect(('127.0.0.1', 4444)) # ������������server���sk.send(b'hello') # ������������msg = sk.recv(1024) # ������������print(msg) # ���������������������sk.close() # ������������
sk������>���������������IP���������
count������>������������������������IP������������������������������������������IP���������
������������������������������������������������������������������������������������
������������
import socket���sk = socket.socket()sk.bind(('127.0.0.1', 4444))sk.listen()������while True: # ��������������������������������� count, addr = sk.accept() count.send('������������'.encode('utf-8')) # ��������������������������������������� while True: # ������������������������������������������ msg1 = count.recv(1024).decode('utf-8') # ������������������������������������������ if msg1.upper() == 'Q': break # ������������������������������������������������������������������ print(msg1) # ������������������������������ msg2 = input('>>') # ��������������������������������� count.send(msg2.encode('utf-8')) # ������������ if msg2.upper() == 'Q': break # ���������������q��������������������������������������������������� count.close() # ���������������������������������������������������
������������
import socket���sk = socket.socket()sk.connect(('127.0.0.1', 4444))msg3 = sk.recv(1024).decode('utf-8') # ������������������������������������������������������������print(msg3) # ������������while True: # ������������������������������ msg2 = input('>>') # ��������������������������������� sk.send(msg2.encode('utf-8')) # ��������������������������� if msg2.upper() == 'Q': break # ��������������������������������������� msg1 = sk.recv(1024).decode('utf-8') # ��������������������� if msg1.upper() == 'Q': break # ��������������������������������������� print(msg1)���sk.close() # ������������������������close������������
������UDP������������Socket
udp���������������������������������������������������������������������������������������������
���������������
���������
import socketsk = socket.socket(type=socket.SOCK_DGRAM) # ���������������sk.bind(('127.0.0.1', 4444)) # ������������������������������������ count, addr = sk.recvfrom(1024) # ������������������������print(count.decode('utf-8')) # ������������������������������msg = input('>>') # ������������������sk.sendto(msg.encode('utf-8'), addr) # ������������ sk.close() # ���������������
���������
import socketsk = socket.socket(type=socket.SOCK_DGRAM) # ���������������server = ('127.0.0.1', 4444) # ���������������������������������������msg = input('>>')sk.sendto(msg.encode('utf-8'), server) # ���������������������������������������msg1 = sk.recv(1024) # ������������������������print(msg1.decode('utf-8'))sk.close() # ������������
���������������������������������������������
���������
import socketsk = socket.socket(type=socket.SOCK_DGRAM)sk.bind(('127.0.0.1', 4444))���while True: # ��������������������������������������� count, addr = sk.recvfrom(1024) # ��������������������������������������������������������� print(count.decode('utf-8')) # count���������������������addr������������������������ msg = input('>>') sk.sendto(msg.encode('utf-8'), addr) # ������������������������������������������������������������
���������
import socketsk = socket.socket(type=socket.SOCK_DGRAM)server = ('127.0.0.1', 4444)���while True: # ��������������������������������� msg = input('>>') if msg.upper() == 'Q': break # ��������������������������������������� sk.sendto(msg.encode('utf-8'), server) # ������������ msg1 = sk.recv(1024).decode('utf-8') # ������������ if msg1.upper() == 'Q': break # ������������������������������������ print(msg1)���sk.close() # ������������������������������������������
������������������
������������������������tcp������������������tcp���������������������������������������������������������������������������
������������������������������������
������������������������������������������������������������������������������
������������������������������������
���������������������������������������������������������������������������������������������
���������
1���������������������������������������������������������������������������������������tcp���������������������������������
2���������������������������������������������������������������������������������������������������������������������������������������
������������������������������������������
���������������������������
������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������
������������������struct���������
���������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������
Struct���������
������������������������������������������������������������������bytes���������������������������
import structcount = 452156new_count = struct.pack('i', count)print(new_count)���# ������b'<\xe6\x06\x00'
������struct������������������������������������������������������������������������4���������������������������������������������������������������������������
��������� | ��������� |
---|---|
���������struct������������������������4������ | ���������4���������������������struct��������������������������������������������� |
��������������� | ��������������������������� |
������������
import socketimport struct���sk = socket.socket()sk.bind(('127.0.0.1', 4444))sk.listen()���count, addr = sk.accept()���# ���������������������������������������������������������������������������������msg3 = struct.unpack('i', count.recv(4))[0]���# ���������������������������������������������������������������������������������������msg4 = count.recv(msg3).decode('utf-8')print(msg4)���msg1 = input('>>')���# ���������������������������������������������������������������bytes������������������������������msg2 = struct.pack('i', len(msg1.encode('utf-8')))count.send(msg2)���# ���������������������count.send(msg1.encode('utf-8'))���# ������������������count.close()sk.close()
������������
import socketimport struct���sk = socket.socket()sk.connect(('127.0.0.1', 4444))���msg1 = input('>>')���# ���������������������������������������������������������������bytes������������������������������msg2 = struct.pack('i', len(msg1.encode('utf-8')))sk.send(msg2)���# ���������������������sk.send(msg1.encode('utf-8'))���# ���������������������������������������������������������������������������������msg3 = struct.unpack('i', sk.recv(4))[0]���# ���������������������������������������������������������������������������������������msg4 = sk.recv(msg3).decode('utf-8')print(msg4)���# ������������������sk.close()
发表评论
最新留言
关于作者
