天天看點

Linux下套接字詳解(補充)--OSI七層與TCP/IP五層網絡架構詳解 OSI七層模型 TCP/IP 差別與聯系

osi是open system interconnect的縮寫,意為開放式系統互聯。

<code>osi</code>是<code>open system interconnect</code>的縮寫,意為開放式系統互聯。

<code>osi</code>七層參考模型的各個層次的劃分遵循下列原則:

根據不同層次的抽象分層

每層應當有一個定義明确的功能

每層功能的選擇應該有助于制定網絡協定的國際标準。

各層邊界的選擇應盡量節省跨過接口的通信量。

層數應足夠多,以避免不同的功能混雜在同一層中,但也不能太多,否則體系結構會過于龐大

同一層中的各網絡節點都有相同的層次結構,具有同樣的功能。

同一節點内相鄰層之間通過接口(可以是邏輯接口)進行通信。

七層結構中的每一層使用下一層提供的服務,并且向其上層提供服務。

不同節點的同等層按照協定實作對等層之間的通信。

根據以上标準,osi參考模型分為實體層、資料鍊路層、網絡層、傳輸層、會話層、表示層、應用層。

實體層涉及在信道上傳輸的原始比特流。

資料鍊路層的主要任務是加強實體層傳輸原始比特流的功能,使之對應的網絡層顯現為一條無錯線路。發送包把輸入資料封裝在資料幀,按順序傳送出去并處理接收方回送的确認幀。

網絡層關系到子網的運作控制,其中一個關鍵問題是确認從源端到目的端如何選擇路由。

傳輸層的基本功能是從會話層接收資料而且把其分成較小的單元傳遞給網絡層。

會話層允許不同機器上的使用者建立會話關系。

表示層用來完成某些特定的功能。

應用層包含着大量人們普遍需要的協定。

osi層

功能

裝置

對應tcp/ip協定

應用層

使用者接口、應用程式(檔案傳輸,電子郵件,檔案服務,虛拟終端)

網關

tftp,http,snmp,ftp,smtp,dns,telnet

表示層

資料的表示、壓縮和加密(資料格式化,代碼轉換,資料加密)

沒有協定

會話層

會話的建立和結束(解除或建立與别的接點的聯系)

傳輸層

提供端對端的接口

tcp,udp

網絡層

為資料包選擇路由,尋址

路由器

ip,icmp,rip,ospf,bgp,igmp

資料鍊路層

保證誤差錯的資料鍊路,傳輸有位址的幀以及錯誤檢測功能

交換機、網橋、網卡

slip,cslip,ppp,arp,rarp,mtu

實體層

傳輸比特流,以二進制資料形式在實體媒體上傳輸資料

集線器、中繼器

iso2110,ieee802,ieee802.2

七層模型的每一層都具有清晰的特征。基本來說,第七至第四層處理資料源和資料目的地之間的端到端 通信,而第三至第一層處理網絡裝置間的通信。

另外,osi模型的七層也可以劃分為兩組:上層(層7、層6和層5)和下層(層4、層3、層2和層 1)。

osi模型的上層處理應用程式問題,并且通常隻應用在軟體上。最高層,即應用層是與終端使用者最接近的。

osi模型的下層是處理資料 傳輸的。實體層和資料鍊路層應用在硬體和軟體上。最底層,即實體層是與實體網絡媒介(比如說,電線)最接近的,并且負責在媒介上發送

定義了用于在網絡中進行通信和資料傳輸的接口 - 使用者程式;

提供标準服務,比如虛拟終端、檔案以及任務的傳輸和處 理;

應用層為作業系統或網絡應用程式提供通路網絡服務的接口。應用層協定的代表包括:telnet、ftp、http、snmp等。

掩蓋不同系統間的資料格式的不同性;

指定獨立結構的資料傳輸格式;

資料的編碼和解碼;加密和解密; 壓縮和解壓縮

這一層主要解決擁護資訊的文法表示問題。它将欲交換的資料從适合于某一使用者的抽象文法,轉換為适合于osi系統内部使用的傳送文法。即提供格式化的表示和轉換資料服務。資料的壓縮和解壓縮, 加密和解密等工作都由表示層負責。

管理使用者會話和對話;

控制使用者間邏輯連接配接的建立和挂斷;

報告上一層發生的錯誤

這一層也可以稱為會晤層或對話層,在會話層及以上的高層次中,資料傳送的機關不再另外命名,而是統稱為封包。會話層不參與具體的傳輸,它提供包括通路驗證和會話管理在内的建立和維護應用之間通信的機制。如伺服器驗證使用者登入便是由會話層完成的。

管理網絡中端到端的資訊傳送;

通過錯誤糾正和流控制機制提供可靠且有序的資料包傳送;

提供面向無連 接的資料包的傳送;

第4層的資料單元也稱作資料包(packets)。但是,當你談論tcp等具體的協定時又有特殊的叫法,tcp的資料單元稱為段 (segments)而udp協定的資料單元稱為“資料報(datagrams)”。這個層負責擷取全部資訊,是以,它必須跟蹤資料單元碎片、亂序到達的 資料包和其它在傳輸過程中可能發生的危險。第4層為上層提供端到端(最終使用者到最終使用者)的透明的、可靠的資料傳輸服務。所為透明的傳輸是指在通信過程中 傳輸層對上層屏蔽了通信傳輸系統的具體細節。傳輸層協定的代表包括:tcp、udp、spx等。

定義網絡裝置間如何傳輸資料;

根據唯一的網絡裝置位址路由資料包;

提供流和擁塞控制以防止網絡資源 的損耗

在 計算機網絡中進行通信的兩個計算機之間可能會經過很多個資料鍊路,也可能還要經過很多通信子網。網絡層的任務就是選擇合适的網間路由和交換結點, 確定資料及時傳送。網絡層将資料鍊路層提供的幀組成資料包,包中封裝有網絡層標頭,其中含有邏輯位址資訊- -源站點和目的站點位址的網絡位址。如 果你在談論一個ip位址,那麼你是在處理第3層的問題,這是“資料包”問題,而不是第2層的“幀”。ip是第3層問題的一部分,此外還有一些路由協定和地 址解析協定(arp)。有關路由的一切事情都在這第3層處理。位址解析和路由是3層的重要目的。網絡層還可以實作擁塞控制、網際互連等功能。在這一層,資料的機關稱為資料包(packet)。網絡層協定的代表包括:ip、ipx、rip、ospf等。

定義操作通信連接配接的程式;

封裝資料包為資料幀;

監測和糾正資料包傳輸錯誤

在實體層提供比特流服務的基礎上,建立相鄰結點之間的資料鍊路,通過差錯控制提供資料幀(frame)在信道上無差錯的傳輸,并進行各電路上的動作系列。資料鍊路層在不可靠的實體媒體上提供可靠的傳輸。該層的作用包括:實體位址尋址、資料的成幀、流量控制、資料的檢錯、重發等。在這一層,資料的機關稱為幀(frame)。資料鍊路層協定的代表包括:sdlc、hdlc、ppp、stp、幀中繼等。

定義通過網絡裝置發送資料的實體方式;

作為網絡媒介和裝置間的接口;

定義光學、電氣以及機械特性。

規定通信裝置的機械的、電氣的、功能的和過程的特性,用以建立、維護和拆除實體鍊路連接配接。具體地講,機械 特性規定了網絡連接配接時所需接插件的規格尺寸、引腳數量和排列情況等;電氣特性規定了在實體連接配接上傳輸bit流時線路上信号電平的大小、阻抗比對、傳輸速率 距離限制等;功能特性是指對各個信号先配置設定确切的信号含義,即定義了dte和dce之間各個線路的功能;規程特性定義了利用信号線進行bit流傳輸的一組 操作規程,是指在實體連接配接的建立、維護、交換資訊是,dte和dce雙放在各電路上的動作系列。在這一層,資料的機關稱為比特(bit)。屬于實體層定義的典型規範代表包括:eia/tia rs-232、eia/tia rs-449、v.35、rj-45等。

tcp/ip(transmission control protocol/internet protocol,傳輸控制協定/網間網協定)是目前世界上應用最為廣泛的協定,它的流行與internet的迅猛發展密切相關—tcp/ip最初是為網際網路的原型arpanet所設計的,目的是提供一整套友善實用、能應用于多種網絡上的協定,事實證明tcp/ip做到了這一點,它使網絡互聯變得容易起來,并且使越來越多的網絡加入其中,成為internet的事實标準。

tcp/ip協定族包含了很多功能各異的子協定。為此我們也利用上文所述的分層的方式來剖析它的結構。tcp/ip層次模型共分為四層:應用層、傳輸層、網絡層、資料鍊路層。

tcp/ip層

協定

arp,rarp

ip,icmp,igmp

tcp ,udp,ugp

telnet,ftp,smtp,snmp

tcp(transmission control protocol)和udp(user datagram protocol)協定屬于傳輸層協定。其中tcp提供ip環境下的資料可靠傳輸,它提供的服務包括資料流傳送、可靠性、有效流控、全雙工操作和多路複用。通過面向連接配接、端到端和可靠的資料包發送。通俗說,它是事先為所發送的資料開辟出連接配接好的通道,然後再進行資料發送;而udp則不為ip提供可靠性、流控或差錯恢複功能。一般來說,tcp對應的是可靠性要求高的應用,而udp對應的則是可靠性要求低、傳輸經濟的應用。

應用層是所有使用者所面向的應用程式的統稱。icp/ip協定族在這一層面有着很多協定來支援不同的應用,許多大家所熟悉的基于internet的應用的實作就離不開這些協定。如我們進行網際網路(www)通路用到了http協定、檔案傳輸用ftp協定、電子郵件發送用smtp、域名的解析用dns協定、遠端登入用telnet協定等等,都是屬于tcp/ip應用層的;就使用者而言,看到的是由一個個軟體所構築的大多為圖形化的操作界面,而實際背景運作的便是上述協定。

這一層的的功能主要是提供應用程式間的通信,tcp/ip協定族

在這一層的協定有tcp和udp。

tcp/ip協定族中非常關鍵的一層,主要定義了ip位址格式,進而能夠使得不同應用類型的資料在internet上通暢地傳輸,ip協定就是一個網絡層協定。

這是tcp/ip軟體的最低層,負責接收ip資料包并通過網絡發送之,或者從網絡上接收實體幀,抽出ip資料報,交給ip層。

tcp支援的應用協定主要有:telnet、ftp、smtp等;udp支援的應用層協定主要有:nfs(網絡檔案系統)、snmp(簡單網絡管理協定)、dns(主域名稱系統)、tftp(通用檔案傳輸協定)等。

tcp/ip協定與低層的資料鍊路層和實體層無關,這也是tcp/ip的重要特點。

除了層的數量之外,開放式系統互聯(osi)模型與tcp/ip協定有什麼差別?

開放式系統互聯模型是一個參考标準,解釋協定互相之間應該如何互相作用。tcp/ip協定是美國國防部發明的,是讓網際網路成為了目前這個樣子的标準之一。開放式系統互聯模型中沒有清楚地描繪tcp/ip協定,但是在解釋tcp/ip協定時很容易想到開放式系統互聯模型。兩者的主要差別如下:

tcp/ip協定中的應用層處理開放式系統互聯模型中的第五層、第六層和第七層的功能。

tcp/ip協定中的傳輸層并不能總是保證在傳輸層可靠地傳輸資料包,而開放式系統互聯模型可以做到。tcp/ip協定還提供一項名為udp(使用者資料報協定)的選擇。udp不能保證可靠的資料包傳輸。

Linux下套接字詳解(補充)--OSI七層與TCP/IP五層網絡架構詳解 OSI七層模型 TCP/IP 差別與聯系

轉載:http://blog.csdn.net/gatieme/article/details/50858920

繼續閱讀