標籤:linux socket tcp osi 協議
ISO的開放互連網模型(OSI)
OSI(open system interconnection)開放系統互聯模型是由ISO(International Organization for Standardization)國際標準組織定義的網路分層模型,共七層。
1.物理層(Physical Layer):物理層定義了所有電子及物理裝置的規範,為上層的傳輸提供了一個物理介質,本層中資料轉送的單位為位元(bit)。屬於本層定義的規範有EIA/TIA RS-232、EIA/TIA RS-449、V.35、RJ-45等,實際使用中的裝置如網卡等屬於本層。
2.資料連結層(Data Link Layer):對物理層收到的位元流進行資料成幀。提供可靠的Data Transmission Service,實現無差錯資料轉送。在資料連結層中資料的單位為幀(frame)。屬於本層定義的規範有SDLC、HDLC、PPP、STP、框架轉送等,實際使用中的裝置如switch交換器屬於本層。
3.網路層(Network Layer):網路層負責將各個子網之間的資料進行路由選擇,分組與重組。本層中資料轉送的單位為資料包(packet)。屬於本層定義的規範有IP、IPX、RIP、OSPF、ICMP、IGMP等。實際使用中的裝置如路由器屬於本層。
4.傳輸層(Transport Layer):提供可靠的Data Transmission Service,它檢測路由器丟棄的包,然後產生一個重傳請求,能夠將亂序收到的資料包重新排序。
5.會話層(Session Layer):管理主機之間會話過程,包括會話建立、終止和會話過程中的管理。
6.展示層(Presentation Layer):展示層對網路傳輸的資料進行變換,使得多個主機之間傳送的資訊能夠互相理解,包括資料的壓縮、加密、格式轉換等。
7.應用程式層(Application Layer):應用程式層與應用程式介面溝通,以達至展示給使用者的目的。 在此常見的協定有: HTTP,HTTPS,FTP,TELNET,SSH,SMTP,POP3等
OSI和郵件發送
TCP/IP四層模型
TCP/IP四層模型和OSI七層模型的不同
TCP/IP主要協議
運行FTP的兩台主機
通過路由器串連的網路
對等通訊
封裝(Encapsulation)
分用(Demultiplexing:解包)
連接埠
眾所周知連接埠(Well Known Ports):從0到1023,這些連接埠由IANA分配和控制它們緊密綁定於一些服務。通常這些連接埠的通訊明確表明了某種服務的協議。例如:21為ftp服務連接埠。
註冊連接埠(Registered Ports):從1024到49151。它些連接埠不受IANA控制,但由IANA登記並提供使用方式清單。它們鬆散地綁定於一些服務。也就是說有許多服務綁定於這些連接埠,這些連接埠同樣用於許多其它目的。例如:1433 Microsoft SQL服務連接埠
動態或私人連接埠(Dynamic or Private Ports):從49152到65535。IANA不管這些連接埠。實際上,機器通常從1024起分配動態連接埠。但也有例外:SUN的RPC連接埠從32768開始
Socket編程實踐(15) --ISO/OSI與TCP/IP