在傳輸層的數據叫段,網路層叫包,數據鏈路層叫幀,物理層叫比特流,這樣的叫法叫PDU(協議數據單元)。
網路七層協議:OSI是一個開放性的通行系統互連參考模型,他是一個定義的非常好的協議規范。OSI模型有7層結構,每層都可以有幾個子層。 OSI的7層從上到下分別是:
7應用層6表示層5會話層4傳輸層3網路層2數據鏈路層1物理層其中高層,
即7、6、5、4層定義了應用程序的功能,
下面3層,即3、2、1層主要面向通過網路的端到端的數據流。
(1)計算機網路的五層七層協議擴展閱讀:
協議分層的作用:
1、人們可以很容易地討論和學習協議的具體細節。
2、層間的標准介面有利於項目的模塊化。
3、營造更好的互聯環境。
4、降低了復雜性,使程序更容易修改,使產品開發更快。
5、每一層利用相鄰的底層服務,更容易記住每一層的功能。
大多數計算機網路採用分層結構,計算機網路分為若干層次,高水平的系統只有低水平的使用系統提供的介面和功能,不需要了解底層的實現演算法和協議的功能;較低的級別也只使用從較高級別系統傳遞的參數,這就是級別間的獨立性。
由於這種獨立性,層次結構中的每個模塊都可以被一個新模塊所替代,只要新模塊具有與舊模塊相同的功能和介面,即使它們使用不同的演算法和協議。
為了在計算機和網路中的終端之間正確地傳輸信息和數據,必須在數據傳輸的順序、數據的格式和內容上有一個約定或規則,稱為協議。
❷ 網路協議的層次結構
最常用的復合技術就是層次方式,網路協議的層次結構如下:(1)結構中的每一層都規定有明確的服務及介面標准。
TCP/IP參考模型將計算機網路協議劃分為4層,以下不屬於這4層的是物理層。基於TCP/IP的參考模型將協議分成四個層次,它們分別是:網路訪問層、網際互聯層(主機到主機)、傳輸層、和應用層。
第四層:傳輸層OSI下3層的主要任務是數據通信,上3層的任務是數據處理,傳輸層是第四層,因此該層是通信子網和資源子網的介面和橋梁,起到承上啟下的作用。
網路七層協議:應用層與其它計算機進行通訊的一個應用,它是對應應用程序的通信服務的。例如,一個沒有通信功能的字處理程序就不能執行通信的代碼,從事字處理工作的程序員也不關心OSI的第7層。
TCP/IP協議共劃分為4個層次,各個層次的作用如下:鏈路層鏈路層有時也稱作數據鏈路層或網路介面層,通常包括操作系統中的設備驅動程序和計算機中對應的網路介面卡。
❸ 網際網路協議將網路劃分成五層,為什麼要劃分「層次」的概念,不會啊,需要幫助。
准確的說是七層,而不是五層,他們分別是
7.應用層
TELNET FTP TFTP SMTP SNMP HTTP BOOTP DHCP
6:表示層
文本:ASCII,EBCDIC
圖形:TIFF,JPEG,GIF,PICT
聲音:MIDI,MPEG,QUICKTIME
5:會話層
NFS SQL RPC X-WINDOWS ASP(APPTALK會話協議)SCP
4:傳輸層
TCP/IP----TCP和UDP NOVELL---IPX SPX
3:網路層
IP IPX
2:數據鏈路層
乙太網 IEEE802.3 令牌環 IEEE802.5 HDLC PPP
1:物理層
10BASE T 10BASE TX V.35 RS-232 100BASE T 100BASE TX 1000BASE T 1000BASE TX 100BASE F 100BASE FX
你說的應該是網際網路協議堆,如果說網際網路協議堆按5層來劃分,第4層就是傳輸層(transport layer),它是應用層(第5層)和網路層(第3層)之間的介面。傳輸層為應用層上的應用提供兩類截然不同的服務:第一類服務叫做可靠的面向連接服務(connection-oriented service),確保正確無誤地把消息從源端傳送到目的地,使用的協議是TCP協議。第二類服務是不可靠的無連接服務(unreliable, connectionless service),使用的協議是用戶數據包協議UDP(User Datagram Protocol)。一般來說,應用層協議運行在操作系統之上,而傳輸層協議集成在操作系統之中。因此,當設計網路應用時,設計人員必需要指定其中的一種網路傳輸協議,網路多媒體應用通常使用UDP協議。
一個網路單元層n(layer n)與另一個網路單元層n(layer n)交換的消息是層n(layer n)上的消息,這些消息稱為層n協議數據單元(layer-n protocol data unit,n-PDU)。如圖15-18所示,主機A的傳輸層與主機B的傳輸層交換的消息就是傳輸層上的消息,這叫做邏輯上的端-端傳輸,當信息包通過中間設備(例如路由器、網橋和中繼器等設備)時,這些網路設備對使用UDP協議的信息包和使用TCP協議的信息包將一視同仁。在一些網路文獻中,通常把使用UDP的協議數據單元(protocol data unit,PDU)稱為數據包(datagram),但網路文獻也使用數據包(datagram)這個術語表示網路層的PDU,名詞術語不統一就會使人很混亂。為了簡化術語,本書把傳輸層上的協議數據單元PDU稱為消息段(segment),或者就叫做傳輸層協議數據單元。
15.4.2 埠號和套接號的概念
在客戶機/服務機(client/server)運行模式中,一端的主機叫做客戶機,另一端的主機叫做服務機。一台服務機可以同時運行同一應用程序的幾個進程,例如服務機上的FTP服務軟體可以同時給幾個客戶傳送文件,對每個客戶至少要調用一個FTP服務軟體的進程。同樣,一個客戶可以同時與幾台不同的主機進行遠程對話,對每個不同的主機,客戶軟體至少要調用一個遠程客戶軟體的進程。因此,對連網計算機上的進程就需要相互聯系的埠號來遞送IP信息包。
在網際網路上,所有使用TCP或者UDP協議的應用程序都有一個標識協議本身的永久性埠號(port number)。例如,我們在設置Web瀏覽器或者FTP文件傳輸程序時會經常遇到的埠號:HTTP的埠號=80,FTP的埠號=21,電子郵件協議SMTP的埠號=25,Telnet的埠號=23,這些埠號叫做眾所周知的埠號(well-known port number)。埠號的分配定義在RFC 1700中,並在1994年成為一個標准,標准號是STD0002。可供TCP使用的埠號共計65,535,一般來說,大於255的埠號由本地的機器使用,小於255的埠號用於頻繁使用的進程,0和255是保留埠號。
收發兩端的傳輸層TCP之間的通信由兩個號碼的組合來鑒別,一個是機器的IP地址,另一個是TCP軟體使用的埠號,這兩個號碼組合在一起就叫做套接標識符(socket)或者叫做套接號,而且收發雙方都需要有套接標識符。因為在互聯網上機器的IP地址是唯一的,而對單台機器的埠號也是唯一的,因此套接標識符在互聯網上也是唯一的,這就可通過套接標識符使互聯網路上的進程之間相互通信。互聯網上收發兩端的進程之間的通信建立過程.
15.4.3 用戶數據包傳輸協議(UDP)
1. UDP協議簡介
網際網路為網路應用提供有兩種不同的傳輸協議:用戶數據包傳輸協議(User Datagram Protocol,UDP)和傳輸控制協議TCP(Transfer Control Protocol)。不同的網路應用使用不同的協議,如圖15-20所示。例如,HTTP使用TCP協議,而普通文件傳輸協議(Trivial File Transfer Protocol,TFTP)則使用UDP。
UDP協議不提供端-端的確認和重傳功能,它不保證信息包一定能到達目的地,因此稱為不可靠協議。應用開發人員選擇UDP時,應用層協議軟體幾乎是直接與IP通信。
應用層協議
HTTP,FTP,Telnet,SMTP,NNTP,……
TFTP,RTP,Real Audio,……
傳輸層協議
TCP
UDP
網路層
IP,ICMP,IGMP
HTTP(Hypertext Transfer Protocol) 超文本傳送協議
FTP(File Transfer Protocol) 文件傳輸協議
Telnet 遠程聯接服務標准協議
SMTP(Simple Mail Transfer Protocol) 簡單郵件傳輸協議
RTP(Real-time Transport Protocol) 實時傳輸協議
UDP有下述幾個特性:
(1) UDP是一個無連接協議,傳輸數據之前源端和終端不建立連接,當它想傳送時就簡單地去抓取來自應用程序的數據,並盡可能快地把它扔到網路上。在發送端,UDP傳送數據的速度僅僅是受應用程序生成數據的速度、計算機的能力和傳輸帶寬的限制;在接收端,UDP把每個消息段放在隊列中,應用程序每次從隊列中讀一個消息段。
(2) 由於傳輸數據不建立連接,因此也就不需要維護連接狀態,包括收發狀態等,因此一台服務機可同時向多個客戶機傳輸相同的消息。
(3) UDP信息包的標題很短,只有8個位元組,相對於TCP的20個位元組信息包的額外開銷很小。
(4) 吞吐量不受擁擠控制演算法的調節,只受應用軟體生成數據的速率、傳輸帶寬、源端和終端主機性能的限制。
雖然UDP是一個不可靠的協議,但它是分發信息的一個理想協議。例如,在屏幕上報告股票市場、在屏幕上顯示航空信息等等。UDP也用在路由信息協議RIP(Routing Information Protocol)中修改路由表。在這些應用場合下,如果有一個消息丟失,在幾秒之後另一個新的消息就會替換它。UDP廣泛用在多媒體應用中,例如,Progressive Networks公司開發的RealAudio軟體,它是在網際網路上把預先錄制的或者現場音樂實時傳送給客戶機的一種軟體,該軟體使用的RealAudio audio-on-demand protocol協議就是運行在UDP之上的協議,大多數網際網路電話軟體產品也都運行在UDP之上。
2. UDP協議的標題結構
UDP信息包由UDP標題和數據組成。UDP的標題結構如圖15-21所示,它由5個域組成:源端埠(Source Port)、目的地埠(Destination Port)、用戶數據包的長度(Length)和檢查和(Checksum)。其中,前4個域組成UDP標題(UDP header),每個域由4個位元組組成;檢查和域占據2個位元組,它用來檢測傳輸過程中是否出現了錯誤;用戶數據包的長度包括所有5個域的位元組數。檢查和的詳細計算可在RFC 1071中找到,現舉一例說明使用檢查和檢測錯誤的道理。例如,假設從源端A要發送下列3個16位的二進制數:word1,word2和word3到終端B,檢查和計算如下:word1
0110011001100110
word2
0101010101010101
word3
0000111100001111
sum=word1+ word2+ word3
1100101011001010
檢查和(sum的反碼)
0011010100110101
從發送端發出的4個(word1,2,3以及檢查和)16位二進制數之和為1111111111111111,如果接收端收到的這4個16位二進制數之和也是全「1」,就認為傳輸過程中沒有出差錯。
許多鏈路層協議都提供錯誤檢查,包括流行的乙太網協議,讀者也許想知道為什麼UDP也要提供檢查和。其原因是鏈路層以下的協議在源端和終端之間的某些通道可能不提供錯誤檢測。雖然UDP提供有錯誤檢測,但檢測到錯誤時,UDP不做錯誤校正,只是簡單地把損壞的消息段扔掉,或者給應用程序提供警告信息。
讀者也可能會問,收發兩端的兩個進程是否有可能通過UDP提供可靠的數據傳輸?答案是可以的。但必需要把確認和重傳措施加到應用程序中,應用程序不能指望UDP來提供可靠的數據傳輸。
15.4.4 傳輸控制協議(TCP)
1. TCP協議簡介
傳輸控制協議TCP(Transmission Control Protocol)是TCP/IP協議堆中的一部分。消息在網路內部或者網路之間傳遞時要打包,TCP負責把來自高層協議的數據裝配成標準的數據包,相當於在數據包上貼包裝清單,而IP則相當於在數據包上貼收、發人的姓名和地址,TCP和IP之間要進行相互通信才能完成數據的傳輸。TCP/IP協議中的IP主要負責在計算機之間搬運數據包,而TCP主要負責傳輸數據的正確性。TCP/IP有3個主要的特性:功能豐富,開放性和普遍型。隨著新的網路服務的不斷出現,TCP/IP協議也在不斷修改和擴充。
TCP是傳輸層上的協議,該協議定義在RFC 793,RFC 1122,RFC 1323和RFC 2001文件中。目前,TCP協議比UDP協議用得更廣泛,也更復雜。
TCP是面向連接的協議。面向連接的意思是在一個應用程序開始傳送數據到另一個應用程序之前,它們之間必須相互溝通,也就是它們之間需要相互傳送一些必要的參數,以確保數據的正確傳送。
TCP是全雙工的協議。全雙工(full plex)的意思是,如果在主機A和主機B之間有連接,A可向B傳送數據,而B也可向A傳送數據。TCP也是點對點的傳輸協議,但不支持多目標廣播。TCP連接一旦建立,應用程序就不斷地把數據送到TCP發送緩存(TCP send buffer),如圖15-22 所示TCP就把數據流分成一塊一塊(chunk),再裝上TCP協議標題(TCP header)以形成TCP消息段(TCP segment)。這些消息段封裝成IP數據包(IP datagram)之後發送到網路上。當對方接收到消息段之後就把它存放到TCP接收緩存(TCP receive buffer)中,應用程序就不斷地從這個緩存中讀取數據。
TCP為應用層和網路層上的IP提供許多服務,其中3個最重要的服務是:(1) 可靠地傳輸消息:為應用層提供可靠的面向連接服務,確保發送端發出的消息能夠被接收端正確無誤地接收到。接收端的應用程序確信從TCP接收緩存中讀出的數據是否正確是通過檢查傳送的序列號(sequence number)、確認(acknowledgement)和出錯重傳(retransmission)等措施給予保證的。
(2) 流程式控制制:連接雙方的主機都給TCP連接分配了一定數量的緩存。每當進行一次TCP連接時,接收方主機只允許發送端主機發送的數據不大於緩存空間的大小。如果沒有流程式控制制,發送端主機就可能以比接收端主機快得多的速度發送數據,使得接收端的緩存出現溢出。
(3) 擁擠控制:TCP保證每次TCP連接不過分加重路由器的負擔。當網路上的鏈路出現擁擠時,經過這個鏈路的TCP連接將自身調節以減緩擁擠。
2 TCP協議標題的結構
如前所述,TCP遞給IP的數據塊叫做消息段(segment)。這個消息段由TCP協議標題域(TCP header field)和存放應用程序的數據域(header fields)組成,如TCP協議標題有很多域組成,現將幾個比較重要的域作一個簡單介紹。
(1) 源端埠號(Source Port Number)域和目的地埠號(Destination port Number)域:前者的16位域用來識別本機TCP;後者的16域用來識別遠程機器的TCP。
(2) 順序號(sequence number)域和確認號(acknowledgment number)域:這兩個域是TCP標題中兩個最重要的域。32位的順序號域用來指示當前數據塊在整個消息中的位置,而32位的確認號域用來指示下一個數據塊順序號,也可間接表示最後接收到的數據塊順序號。順序號域和確認號域由TCP收發兩端主機在執行可靠數據傳輸時使用。
在介紹順序號(sequence number)和確認號(acknowledgement number)之前,首先要介紹TCP最大消息段大小(maximum segment size,MSS)的概念。在建立TCP連接期間,源端主機和終端主機都可能宣告最大消息段大小MSS和一個用於連接的最小消息段大小。如果有一端沒有宣告MSS,就使用預先約定的位元組數(如1500,536或者512位元組)。當TCP發送長文件時,就把這個文件分割成許多按照特定結構組織的數據塊(chunk),除了最後一個數據塊小於MSS外,其餘的數據塊大小都等於MSS。在交互應用的情況下,消息段通常小於MSS,像Telnet那樣的遠程登錄應用中,TCP消息段中的數據域通常僅有一個位元組。
在TCP數據流中的每個位元組都編有號碼。例如,一個106位元組長的文件,假設MSS為103位元組,第一個位元組的順序號定義為0.
❹ 網路七層協議是什麼
OSI是一個開放性的通行系統互連參考模型,他是一個定義的非常好的協議規范。OSI模型有7層結構,每層都可以有幾個子層。下面我簡單的介紹一下這7層及其功能。
OSI的7層從上到下分別是
7
應用層
6
表示層
5
會話層
4
傳輸層
3
網路層
2
數據鏈路層
1
物理層