C\S 架構 DNS伺服器 交換機 路由器
------------------------只有不快的斧,沒有劈不開的柴;只有想不到的人,沒有做不到的事。想幹總會有辦法,不想幹總會有理由!
# ------------------------------------------------------------------------------------------------------------#
day 26
本階段的內容
網路程式設計 併發程式設計 資料庫 有可能還有前端
C\S架構(****) client server
軟體C\S架構:客戶端
B\S架構:瀏覽器(browser)\服務端>>>統一介面
硬體C\S架構: 印表機.
網路通訊整個流程(**)
網線:傳輸電訊號
集線器:將所有連線到集線器的網路裝置連通起來
交換機: 升級版的集線器
網絡卡:接受電訊號
MAC地址:實體地址: 8C-EC-4B-88-B9-C9 #前三位廠商編號,後三位生產流水號
單播:
廣播:
廣播風暴
Ip地址:
IPv4 地址: 192.168.15.46 #4個點分十進位制
作用:劃分廣播域
192.168.15.46 #
Ipv4:192.168.15.0-192.168.15.255 # 八位二進位制 256個電腦
Ipv6:
192.168.0.0 - 192.168.255.255
咱們班的ip地址段:192.168.15.0 -- 192.168.15.255
DHCP:自動分配IP地址
Arp表:儲存著ip地址和mac地址對應關係
Arp協議:通過ip地址獲取mac地址
子網掩碼:計算兩個ip地址是否屬於同一網段:
255.255.255.0
源ip地址:192.168.15.46
11000000.10101000.00001111.00101110
11111111.11111111.11111111.00000000
11000000.10101000.00001111.00000000 #192.168.15.0
目標的ip:192.168.16.30 #192.168.16.0
路由器:轉發訊息
路由協議:計算路由轉發訊息的最優路徑
埠號:0 - 65535,確定電腦上的應用程式的
Ip地址+埠 = 確定某個電腦上的某個應用程式
初識socket (*****)
看程式碼檔案
# # --------------[ 服務端 ]--------------
import socket
#建立了一個socket物件
server = socket.socket() #建立一個手機
ip_port = ('192.168.15.113',8001) #建立了一張電話卡
#繫結IP地址和埠
server.bind(ip_port) #插上電話卡
#監聽IP地址和埠
server.listen() #開機
print(11111)
#等待客戶端的連結
conn, addr = server.accept() #等著別人給我打電話,阻塞住
#接收訊息
from_client_msg = conn.recv(1024) #1024為訊息大小,單位B,MB = 1024KB,1KB = 1024B
#接收的訊息是bytes型別,需要轉換為字串
from_client_msg = from_client_msg.decode('utf-8')
print(from_client_msg)
conn.send('死鬼,十點'.encode('utf-8'))
#關閉連結
conn.close()
server.close()
# print(conn)
# print('>>>>',addr)
# # --------------[ 客戶端 ]--------------
import socket
client = socket.socket()
server_ip_port = ('192.168.15.113',8001)
#連結服務端
client.connect(server_ip_port)
#發訊息
client.send('約嗎'.encode('utf-8')) #send裡面的訊息必須是位元組型別的
from_server_msg = client.recv(1024) #阻塞住,等待接收訊息
from_server_msg = from_server_msg.decode('utf-8')
print(from_server_msg)
client.close()