網路程式設計 協議

2021-08-09 12:13:04 字數 2423 閱讀 8574

1.c/s-client/server

優點:協議選用靈活/缺點:不安全,可以修改使用者電腦

2.b/s-browser/server

優點:跨平台/缺點:只能使用http

物:光纖

數:資料的傳輸和錯誤檢測

網:路由選擇

傳:udp/tcp

會:接觸或建立關係

表:格式轉換加密解密

應:ftp/http

乙太網幀格式:借助mac位址完成資料報傳遞

mac位址就是網絡卡的編號,網絡卡編號是唯一的(由廠家設定)

由於網路中不知道對方的mac位址,需要通過ip獲取,這時候要用到arp協議,傳送arp資料報

a給b傳送arp協議,帶上自己的ip和mac位址,以及b的ip位址

b接收到arp協議後,傳送自己的ip和mac位址,以及a的ip和mac位址

dns網域名稱解析伺服器,通過網域名稱拿到ip位址

udp在傳輸資料報前不用在客戶和伺服器之間建立乙個連線,且沒有超時重發等機制,故而傳輸速度很快。

如果想避免丟失的情況,需要在應用層進行封裝

16位源埠:

16位目的埠:

程序1.程序id

2.網路環境中:

1)ip-定位一台主機

2)port-定位乙個程序,16位,最多65535個埠

使用場景:對資料安全要求高

1.網頁登入資料

2.檔案傳輸

面向連線的

1.連線時,三次握手

2.傳送資料時:進行資料確認(丟失,會重傳&管道傳輸)

標誌位:

syn:請求建立鏈結

ack:應答

fin:斷開鏈結

第一次握手

客戶端:攜帶標誌位syn,隨機32位序號

服務端:檢測syn是否為1

第二次握手

伺服器:

攜帶標誌位ack,客戶端隨機32位序號+1

syn+32隨機序號

客戶端:

檢測標誌位

第三次握手:

客戶端:ack-確認序號(隨機序號+1)

服務端:檢測ack-校驗確認序號

第一次揮手:

客戶端:1.fin+序號 2.ack+序號

服務端:1.檢測fin 2.ack之前發的資料傳送多少

第二次揮手:

伺服器:1.ack+確認序號

客戶端:檢測ack

第三次揮手:

服務端:1.fin+序號 2.ack+序號

客戶端:檢測ack

第四次揮手:

客戶端:

服務端:

三次握手四次揮手

ip位址

ip位址包括:網路號和主機號

a類:網路號7位,主機號24位

b類:網路號14位,主機號16位

c類:網路號21位,主機號8位

c類ip位址,乙個網段最多可以容納256-2臺電腦,192.168.1.0代表網路號

192.168.1.255代表廣播位址

區分各類位址的最簡單的方法是看它的第乙個十進位制整數。

集線器收到的資料報都會以廣播的形式傳送,交換機有學習功能,可以記住mac位址

路由器:連線不同的網路,有兩個網絡卡,不同的網絡卡連線不同的網路,網絡卡在各自不同的網路中具有該網路的ip既閘道器。路由之間通過mac位址來確定訊息的傳送方向

給路由器設定尋路規則

arp:根據ip找電腦的mac位址

rarp:根據mac位址找ip

dns:協議

用來標記乙個程序(不能用pid來標記,因為pid在多個系統上可能不同),每個軟體啟動的時候都會開啟乙個埠,不同的系統中埠是乙個。

埠號0~65535(2的16次方)

知名埠(well konwn ports): 0~1023

80埠分配給http服務

21埠分配給ftp服務

動態埠(dynamic ports): 1024~65535

不知名的程序可以申請埠,比如sql

netstat -an # 統計當前的埠資訊
在/etc/services中可以檢視各個埠提供的服

網路程式設計 協議

tcp傳送資料 1.建立客戶端的socket物件 socket 2.獲取輸出流 寫資料 3.釋放資源 public static void main string args throws exception 1.建立客戶端的socket物件 serversocket 2.獲取輸入流,讀資料 3.釋放...

網路程式設計(TCP協議)

tcp協議,傳輸控制協議 英語 transmission control protocol,縮寫為 tcp 是一種面向連線的 可靠的 基於位元組流的傳輸層通訊協議,由ietf的rfc 793定義。tcp通訊需要經過建立連線 資料傳送 終止連線三個步驟。tcp通訊模型中,在通訊開始之前,一定要先建立相...

網路程式設計 UDP協議

udp協議 服務端1 2 udp 協議 又稱 資料報協議 sock dgram34 5 from socket import 一般不這樣做 會重名 但寫socket可以這樣寫 因為要用到太多 會有大量的socket.67 server socket af inet,sock dgram 8 serv...