歡迎來到Linux教程網
Linux教程網
Linux教程網
Linux教程網
Linux教程網 >> Linux基礎 >> Linux教程 >> TCP/IP簡介

TCP/IP簡介

日期:2017/2/27 15:52:53   编辑:Linux教程

雖然大家現在對互聯網很熟悉,但是計算機網絡的出現比互聯網要早很多。

計算機為了聯網,就必須規定通信協議,早期的計算機網絡,都是由各廠商自己規定一套協議,IBM、Apple和Microsoft都有各自的網絡協議,互不兼容,這就好比一群人有的說英語,有的說中文,有的說德語,說同一種語言的人可以交流,不同的語言之間就不行了。

為了把全世界的所有不同類型的計算機都連接起來,就必須規定一套全球通用的協議,為了實現互聯網這個目標,互聯網協議簇(Internet Protocol Suite)就是通用協議標准。Internet是由inter和net兩個單詞組合起來的,原意就是連接“網絡”的網絡,有了Internet,任何私有網絡,只要支持這個協議,就可以聯入互聯網。

因為互聯網協議包含了上百種協議標准,但是最重要的兩個協議是TCP和IP協議,所以,大家把互聯網的協議簡稱TCP/IP協議。

通信的時候,雙方必須知道對方的標識,好比發郵件必須知道對方的郵件地址。互聯網上每個計算機的唯一標識就是IP地址,類似123.123.123.123。如果一台計算機同時接入到兩個或更多的網絡,比如路由器,它就會有兩個或多個IP地址,所以,IP地址對應的實際上是計算機的網絡接口,通常是網卡。

IP協議負責把數據從一台計算機通過網絡發送到另一台計算機。數據被分割成一小塊一小塊,然後通過IP包發送出去。由於互聯網鏈路復雜,兩台計算機之間經常有多條線路,因此,路由器就負責決定如何把一個IP包轉發出去。IP包的特點是按塊發送,途徑多個路由,但不保證能到達,也不保證順序到達。

TCP協議則是建立在IP協議之上的。TCP協議負責在兩台計算機之間建立可靠連接,保證數據包按順序到達。TCP協議會通過握手建立連接,然後,對每個IP包編號,確保對方按順序收到,如果包丟掉了,就自動重發。

許多常用的更高級的協議都是建立在TCP協議基礎上的,比如用於浏覽器的HTTP協議、發送郵件的SMTP協議等。

一個IP包除了包含要傳輸的數據外,還包含源IP地址和目標IP地址,源端口和目標端口。

端口有什麼作用?在兩台計算機通信時,只發IP地址是不夠的,因為同一台計算機上跑著多個網絡程序。一個IP包來了之後,到底是交給浏覽器還是QQ,就需要端口號來區分。每個網絡程序都向操作系統申請唯一的端口號,這樣,兩個進程在兩台計算機之間建立網絡連接就需要各自的IP地址和各自的端口號。

一個進程也可能同時與多個計算機建立鏈接,因此它會申請很多端口。

Copyright © Linux教程網 All Rights Reserved