[Linux]运输层的端口
生活随笔
收集整理的這篇文章主要介紹了
[Linux]运输层的端口
小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.
既然提到端口,我們就來分析一下為什么要使用端口的緣由吧。我們首先要知道的是,運輸層有復(fù)用和分用的功能。應(yīng)用層所有的應(yīng)用進程都可以通過運輸層再傳送到IP層,這就是復(fù)用。運輸層從IP層收到數(shù)據(jù)后必須交付到指明的應(yīng)用進程,這就是分用。我們知道,單個進程是用進程標(biāo)識符來標(biāo)志的,但在計算機操作系統(tǒng)指派的進程標(biāo)識符標(biāo)志運行在應(yīng)用層的進程是不行的,因為不同的操作系統(tǒng)使用不同的進程標(biāo)識符。為了讓不同操作系統(tǒng)間也實現(xiàn)進程間通信,因此得用一種方法對TCP/IP體系的應(yīng)用進程進行標(biāo)志。同時,我們在進行通信的時候,必須知道起點和終點,即通信的一方和另一方,那么我們?nèi)绾巫R別終點呢,這里就要使用到協(xié)議端口號(端口)。雖然通信的終點是應(yīng)用進程,但我們要傳送的報文交到目的主機的某一個合適的目的端口,剩下的工作就由TCP來完成。
關(guān)于端口,分為軟件端口和硬件端口。
軟件端口:在協(xié)議棧層間的抽象的協(xié)議端口,應(yīng)用層的各種協(xié)議進程與運輸實體進行層間交互的一種地址
硬件端口:不同硬件設(shè)備進行交互的接口
在TCP/UDP的首部格式中,都有源端口和目的端口。當(dāng)運輸層收到IP層交上來的運輸層報文時,就能根據(jù)其首部中的目的端口把數(shù)據(jù)交付應(yīng)用層的目的應(yīng)用進程。
TCP/IP的運輸層用一個16位端口號來標(biāo)志一個端口,端口號只具有本地的意義。
注:不同的計算機具有相同的端口是沒有關(guān)聯(lián)的
16位的端口號可允許有65535個不同的端口號。
端口號的分類:
服務(wù)器端使用的端口號:分為兩類,(1)熟知端口號(系統(tǒng)端口號):數(shù)值為0-1023;這些數(shù)值在www.iana.org中可查到。常用的熟知端口號為:
(2)登記端口號,數(shù)值為1024-49151,這類端口號是為沒有熟知端口號的應(yīng)用程序使用的。使用這類端口號需在IANA按照規(guī)定的手續(xù)登記,防止重復(fù)。
客戶端使用的端口號:數(shù)值為49152-65535,這類端口號在客戶進程運行時動態(tài)選擇,因此稱為短暫端口號。當(dāng)服務(wù)器進程收到客戶進程的請求報文時,就知道客戶進程的端口號,因而把數(shù)據(jù)發(fā)送給客戶進程。通信結(jié)束后,客戶端口號就不存在,此端口號也可以分配給其他客戶進程使用。
總結(jié)
以上是生活随笔為你收集整理的[Linux]运输层的端口的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 成都大熊猫繁育基地学生票怎么买
- 下一篇: [Linux]ARP协议