最全網絡通訊協議詳解

網絡通訊協議詳解算法

1.物理層緩存

典型設備:中繼器、集線器(Hub)、網線、調制解調器、光纖、雙絞線、同軸電纜服務器

數據單元:比特(bit)網絡

做用:機械、電子、定時接口通訊信道上原始比特流傳輸加密

協議:IEEE 802.二、Enternet v.二、Internetworkspa

2.數據鏈路層翻譯

典型設備:網卡、網橋、交換機
代理

數據單元:幀指針

做用:物理尋址,同時將物理比特流轉變爲邏輯傳輸鏈路對象

協議:隧道協議:PPTP(點對點隧道協議)、L2TP(第二層隧道協議)、MPLS

3.網絡層

典型設備:路由器、防火牆、多層交換機

數據單元:數據包

做用:控制子網的運行,如邏輯編址、分組傳輸、路由選擇

協議:IP、IGMP、BGP、RIP(屬於UDP)、ICMP、ARP、RARP

4.傳輸層

典型設備:進程和端口

數據單元:數據段

做用:接受上一層的數據,在必要的時候把數據進行分割,並將這些數據交給網絡層,且保證這些數據段有效到達對端

協議:TCP、UDP

5.會話層

數據單元:數據

做用:不用機器上的用戶之間創建及管理對話

協議:SSL、TSL

6.表示層

數據單元:數據

做用:信息的語法語義以及他們的關聯,如加密解密、轉換翻譯、壓縮解壓縮

協議:LPP

7.應用層

數據單元:數據

做用:各類應用程序協議

協議:SMTP、POP三、HTTP、FTP、Telnet、DNS、DHCP、SNMP

重點協議解析

1.HDLC

HDLC(High-Level Data Link Control,高級數據鏈路控制),是鏈路層協議的一項國際標準,用以實現遠程用戶間資源共享以及信息交互。HDLC協議用以保證傳送到下一層的數據在傳輸過程當中可以準確地被接收,也就是差錯釋放中沒有任何損失,而且序列正確。HDLC協議的另外一個重要功能是流量控制,即一旦接收端收到數據,便能當即進行傳輸。

HDLC的監控幀用於差錯控制和流量控制,一般簡稱爲S幀

00——接收就緒(RR),由主站或從站發出,主站可使用RR型S幀來輪詢從站,即但願從站傳輸編號爲N的I幀,邊進行傳輸;從站也能夠用RR型S幀來作相應,表示從站但願從主站那裏接收到的下一個的I幀的編號是N

01——拒絕(REJ),由主站或從站發出,用以要求發送方對從編號爲N開始的幀及其後全部的幀進行重發,這也暗示N之前的幀已被正確接收

10——接受未就緒(NRN),標識編號小於N的I幀已被接收到,但當前正處於忙狀態,還沒有準備好接收編號爲N的幀,這可用來對鏈路流量進行控制

11——選擇拒絕(SREJ),它要求發送方發送編號爲N單個I幀,並暗示其餘編號爲I幀已經所有確認。差錯機制爲選擇重發

2.TCP和UDP

TCP特色:

(1)面向鏈接的傳輸層協議

(2)每一條TCP鏈接只能有兩個端點,只能是點到點

(3)TCP提供可靠的交付服務,經過TCP鏈接傳送的數據無差錯、不丟失、無重複、而且按順序到達

(4)TCP提供全雙工通訊,TCP容許通訊雙方的應用進程在任什麼時候刻都能發送數據。在TCP鏈接的兩端都有發送緩存和接收緩存,用來臨時存放通訊的數據

(5)面向字節流:TCP把應用進程交下來的數據當作是一連串無結構的字節流,TCP並不關心應用進程一次把多長的報文發送到TCP的緩存中,而是根據對端給出的窗口值和當前網絡擁塞的程度來決定一個報文段應該包含多少個字節

UDP的特色:

(1)UDP是一種簡單的面向數據報的傳輸協議,實現的是不可靠、無鏈接的數據報服務,一般用於不要求可靠性傳輸的場合

(2)UDP傳輸能夠提升傳輸效率,減小額外的開銷,使用UDP傳輸時,應用進程的每次輸出均生成一個UDP數據報,並將其封裝在一個IP數據報中發送

(3)UDP沒有擁塞控制,因此網絡出現擁塞不會讓源主機的發送速率下降,這對於某些實時應用是很重要的。不少實時應用要求源主機以恆定的速率發送數據,而且容許在擁塞的時候丟失一些數據,但不容許有太大的時延

TCP和UDP協議均提供了端口尋址的能力

創建TCP鏈接時,端口狀態有:

LISTEN:服務器等待鏈接過來的狀態

SYN_SENT:客戶端發起鏈接(主動打開),變成此狀態,若是SYN超時,或者服務器不存在直接CLOSED

SYN_RCVD:服務器收到SYN包的時候,就變成此狀態

ESTABLISHED:完成三次握手,進入鏈接創建狀態,書名此時已經能夠進行數據傳輸了

 

三次握手過程:

做用:創建三次握手,而非二次握手是防止產生錯誤的鏈接

過程:當發送方發送了SYN=1,ACK=0請求後,須要等待收到對方的發送的SYN=一、ACK=1的數據包;收到以後,發送方在發送SYN迴應,已創建正常的三次握手請求

但出現錯誤鏈接時,會以RST、ACK包迴應來拒絕鏈接

TCP協議中URG指針的做用是當等於1的時候。高速系統有緊急數據傳送,應該儘快

TCP協議中用於進行流量控制的字段爲窗口,TCP協議使用可變大小的滑動窗口協議實現流量控制。

2.ARP

ARP協議的數據單元被封裝在以太幀中傳輸

3.ICMP

ICMP協議做爲IP數據報中的數據,封裝在IP數據報中傳

4.RIP

RIP協議屬於應用層協議,被封裝在UDP報文中傳輸,RIP協議的默認路由更新週期是30秒

RIPv2對RIPv1協議的改進之一爲路由器有選擇地將路由表中的信息發送給鄰居,而不是發送整個路由表。具體說,一條路由信息不會被髮送給

該信息的來源,這種方法叫作水平分割法,做用是解決路由環路。

5.OSPF

(1)OSPF路由器週期性(默認10秒)的從其啓動的OSPF協議的每個接口以組播地址224.0.0.5發送HELLO包,以尋找鄰居

(2)OSPF的每一個區域運行路由選擇短髮的一個實例

(3)OSPF採用Dijkstra算法計算最佳路由

(4)OSPF在理由發生變化的時候纔會發送更新信息

(5)OSPF協議是鏈路狀態路由協議,用區域0表示主幹區域,該協議提供了整個網絡的拓撲視圖,並根據拓撲圖計算到達每一個目標的最優路徑

(6)OSPF協議能對網絡發生的變化快速響應,當網絡發生變化時發送觸發式更新,發送週期性更新鏈路狀態通告(LSA),並非相互交換本身的整張路由表

(7)OSPF路由協議不一樣進程之間能夠進行路由重分佈,進程號僅在本地有意義。

OSPF協議將網絡分紅4種區域,其中存根區域不接受本地自制系統之外的路由信息,歲自制系統之外的目標採用默認路由0.0.0.0,做用是減少路由表規模和路由信息數量。

6.POP3

POP3是郵局協議,用的是TCP的110端口,電子郵件協議有POP三、SMTP、IMAP

7.BGP4

在BGP4協議中keepalive報文將正常工做信息告知鄰居,update報文給出了新的路由信息

8.DHCP

(1)DHCP服務器租約默認爲8天

(2)當租約期過去50%時,客戶機與服務器聯繫更新租約

(3)當租約期過去87.5%時,客戶機與服務器聯繫失敗,從新啓動IP租用過程

(4)客戶機能夠採用ipconfig/renew從新申請地址

DHCP客戶端經過廣播的方式發送DHCPDiscover消息。

當DHCP客戶機第一次登錄網絡的時候(也就是客戶機上沒有任何IP數據的時候),他會經過UDP的67端口向網絡上發送出一個DHCPDiscover數據包(包中包含客戶機的MAC地址和計算機名等信息)。由於客戶及還不知道本身屬於哪個網絡,因此封包的源地址爲0.0.0.0,目標地址爲255.255.255.255,而後再附上DHCPDiscover的信息,向網絡進行廣播

DHCP Release:釋放申請的IP,DHCP Decline:拒絕該IP,DHCP Nack:取消申請的IP,DHCP Renew:從新申請IP,DHCP Request請求從新租用IP地址

9.DNS

在DNS服務器中的資源記錄有如下幾種:

(1)SOA定義了該區域中哪一個名稱服務器是權威域名服務器

(2)NS表示該區域的域名服務器

(3)PTR記錄把IP地址映射到域名

(4)MX郵件交換記錄,定義了區域的郵件服務器及優先級

(5)A表示主機,A記錄表示主機名到IP地址的映射

(6)CNAME表示別名

(7)TXT記錄,通常指爲某個主機名或域名設置的說明

10.SNMP

SNMP使用以下5種格式的PDU(協議數據單元),也是SNMP系列協議中最基礎的部分:

Get-Request:由管理進程發出,向管理代理請求其取值

Get-Next-Request:由管理進程發出,在Get-Request報文後使用,表示查詢MIB中的下一個對象,經常使用於循環查詢

Set-Request:由管理進程發出,用來請求改變管理代理上的某些對象

Get-Response:當管理代理收到管理進程發送的一個Get-Request或Get-Next-Request報文時,將應答的一個該報文

Trap:一種報警機制(屬於無請求的報文),用於在乎外或忽然故障的狀況下管理代理主動向管理進程發送的報警信息。常見的報警類型有冷啓動、熱啓動、線路故障、線路故障恢復和認證失敗等

 

SNMP採用UDP的方式傳輸,SNMP使用的端口號是161,SNMP TRAP使用的端口號是162

SNMP使用的是無鏈接的UDP協議,所以在網絡上傳送的SNMP豹紋的開銷很小,但UDP是不保證可靠交付的。同時SNMP使用UDP的方法有些特殊,在運行代理程序的服務器端口用161端口來

接收Get和Set報文和發送響應報文(客戶端使用臨時端口),但運行管理程序的客戶端則使用162端口進行接收來自各代理的Trap報文。

若是代理收到一個Get請求,若是不嗯可以提供該對象的值,則以該對象的下一個值做爲響應。

11.CSMA/CD

CSMA/CD是介質訪問子層的協議

12.FTP

FTP服務器使用20和21兩個網絡端口和FTP客戶端進行通訊。主動模式下,FTP服務器的21端口用於傳輸FTP的控制命令,20端口用於傳輸文件數據。

13.RSVP

資源預留協議RSVP,他的過程從應用程序流的源節點發送Path消息開始,該消息會沿着六所流經路徑傳到流的目的節點,並沿途創建路徑狀態,目的節點收到該Path消息後,會向源節點回送Resv消息,

沿途創建預留狀態,若是源節點成功受到預期的Resv消息,則確認在整條路徑上資源預留成功

14.SMTP

使用端口號25

15.HTTP/HTTPS

使用短端口號是80,HTTPS端口號443

16.Telnet

端口號23,Telnet服務器所開放的端口,用於從本地遠程登陸對方電腦

未完待續。。。。4.1

相關文章
相關標籤/搜索