一、定義
TCP/IP(傳輸控制協議/網際協議)是指能夠在多個不同網路間實作資訊傳輸的協議簇。TCP/IP協議不僅僅指的是TCP 和IP兩個協議,而是指一個由FTP、SMTP、TCP、UDP、IP等協議構成的協議簇, 只是因為在TCP/IP協議中TCP協議和IP協議最具代表性,所以被稱為TCP/IP協議。
二、簡介
TCP/IP傳輸協議,即傳輸控制/網路協議,也叫作網路通訊協議。它是在網路的使用中的最基本的通信協議。TCP/IP傳輸協議對互聯網中各部分進行通信的標準和方法進行了規定。并且,TCP/IP傳輸協議是保證網路資料資訊及時、完整傳輸的兩個重要的協議。TCP/IP傳輸協議是嚴格來說是一個四層的體系結構,應用層、傳輸層、網路層和資料鏈路層都包含其中。TCP/IP協議是Internet最基本的協議,其中應用層的主要協議有Telnet、FTP、SMTP等,是用來接收來自傳輸層的資料或者按不同應用要求與方式將資料傳輸至傳輸層;傳輸層的主要協議有UDP、TCP,是使用者使用平臺和計算機資訊網內部資料結合的通道,可以實作資料傳輸與資料共享;網路層的主要協議有ICMP、IP、IGMP,主要負責網路中資料包的傳送等;而網路訪問層,也叫網路介面層或資料鏈路層,主要協議有ARP、RARP,主要功能是提供鏈路管理錯誤檢測、對不同通信媒介有關資訊細節問題進行有效處理等。
三、構成
TCP/IP協議在一定程度上參考了OSI的體系結構。OSI模型共有七層,從下到上分別是物理層、資料鏈路層、網路層、運輸層、會話層、表示層和應用層。但是這顯然是有些復雜的,所以在TCP/IP協議中,它們被簡化為了四個層次。
(1)應用層、表示層、會話層三個層次提供的服務相差不是很大,所以在TCP/IP協議中,它們被合并為應用層一個層次。
(2)由于運輸層和網路層在網路協議中的地位十分重要,所以在TCP/IP協議中它們被作為獨立的兩個層次。
(3)因為資料鏈路層和物理層的內容相差不多,所以在TCP/IP協議中它們被歸并在網路介面層一個層次里。只有四層體系結構的TCP/IP協議,與有七層體系結構的OSI相比要簡單了不少,也正是這樣,TCP/IP協議在實際的應用中效率更高,成本更低。
分別介紹TCP/IP協議中的四個層次。
應用層:應用層是TCP/IP協議的第一層,是直接為應用行程提供服務的。
(1)對不同種類的應用程式它們會根據自己的需要來使用應用層的不同協議,郵件傳輸應用使用了SMTP協議、萬維網應用使用了HTTP協議、遠程登錄服務應用使用了有TELNET協議。
(2)應用層還能加密、解密、格式化資料。
(3)應用層可以建立或解除與其他節點的聯系,這樣可以充分節省網路資源。
運輸層:作為TCP/IP協議的第二層,運輸層在整個TCP/IP協議中起到了中流砥柱的作用。且在運輸層中,TCP和UDP也同樣起到了中流砥柱的作用。網路層:網路層在TCP/IP協議中的位于第三層。在TCP/IP協議中網路層可以進行網路連接的建立和終止以及IP地址的尋找等功能。網路介面層:在TCP/IP協議中,網路介面層位于第四層。由于網路介面層兼并了物理層和資料鏈路層所以,網路介面層既是傳輸資料的物理媒介,也可以為網路層提供一條準確無誤的線路。
四、時效性
TCP/IP傳輸協議的時效性是指,傳輸的資訊在一定的使用情景、時間范圍內,資料資訊對使用者是有價值的。更宏觀的來說,資訊的時效性還包括資料資訊在傳輸后引起接受者的興趣和對社會產生的影響。但隨著時間的推移,資料資訊的被利用價值就會越來越小。也就是說,針對同一事物的相關資料資訊在不同的時間段里有著或大或小的價值差異,這種差異我們叫作資料資訊的時效性。TCP/IP傳輸協議下的資料資訊傳輸,克服了傳統資訊傳輸方式的滯后、拖延、效率低下的問題。TCP/IP傳輸協議往往能及時地將有效資訊傳輸給資訊需要者,這就能實作資料資訊的價值最大化,保證資料資訊的時效性。
五、TCP/IP協議的特點
(1)TCP/IP協議不依賴于任何特定的計算機硬體或作業系統,提供開放的協議標準,即使不考慮Internet,TCP/IP協議也獲得了廣泛的支持。所以TCP/IP協議成為一種聯合各種硬體和軟體的實用系統,其既可以提供硬體間的協議也可以是軟體間的,還可以軟硬體互動。
(2)TCP/IP協議并不依賴于特定的網路傳輸硬體,所以TCP/IP協議能夠集成各種各樣的網路。用戶能夠使用以太網(Ethernet)、令牌環網(Token Ring Network)、撥號線路(Dial-up line)、X.25網以及所有的網路傳輸硬體。
(3)統一的網路地址分配方案,使得整個TCP/IP設備在網中都具有惟一的地址,便于準確精準傳輸資訊和相互連接;
(4)標準化的高層協議,可以提供多種可靠的用戶服務,如HTTP、FTP協議等。
六、應用
socket是對TCP/IP協議的封裝和應用(程式員層面上)。也可以說,TPC/IP協議是傳輸層協議,主要解決資料如何在網路中傳輸,而HTTP是應用層協議,主要解決如何包裝資料。關于TCP/IP和HTTP協議的關系,網路上我還看到有一段比較容易理解的介紹:
“我們在傳輸資料時,可以只使用(傳輸層)TCP/IP協議,但是那樣的話,如果沒有應用層,便無法識別資料內容,如果想要使傳輸的資料有意義,則必須使用到應用層協議,應用層協議有很多,比如HTTP、FTP、TELNET等,也可以自己定義應用層協議。WEB使用HTTP協議作應用層協議,以封裝HTTP文本資訊,然后使用TCP/IP做傳輸層協議將它發到網路上。”
我們平時說的最多的socket是什么呢,實際上socket是對TCP/IP協議的封裝,Socket本身并不是協議,而是一個呼叫介面(API),通過Socket,我們才能使用TCP/IP協議。實際上,Socket跟TCP/IP協議沒有必然的聯系。Socket編程介面在設計的時候,就希望也能適應其他的網路協議。所以說,Socket的出現只是使得程式員更方便地使用TCP/IP協議堆疊而已,是對TCP/IP協議的抽象,從而形成了我們知道的一些最基本的函式介面,比如create、 listen、connect、accept、send、read和write等等。網路有一段關于socket和TCP/IP協議關系的說法比較容易理解:
“TCP/IP只是一個協議堆疊,就像作業系統的運行機制一樣,必須要具體實作,同時還要提供對外的操作介面。這個就像作業系統會提供標準的編程介面,比如win32編程介面一樣,TCP/IP也要提供可供程式員做網路開發所用的介面,這就是Socket編程介面。”
實際上,傳輸層的TCP是基于網路層的IP協議的,而應用層的HTTP協議又是基于傳輸層的TCP協議的,而Socket本身不算是協議,就像上面所說,它只是提供了一個針對TCP或者UDP編程的介面。
(部分源自百度百科)
轉載請註明出處,本文鏈接:https://www.uj5u.com/houduan/19223.html
標籤:非技術區
下一篇:光纖問題
