屬於網路層的協議
Ⅰ 網路層協議有哪些
IP,ARP,ICMP,RARP等等等
Ⅱ 網路層的網路層協議
TCP/IP網路層的核心是IP協議,它是TCP/IP協議族中最主要的協議之一。IP協議非常簡單,僅僅提供不可靠、無連接的傳送服務。IP協議的主要功能有:無連接數據報傳輸、數據報路由選擇和差錯控制。與IP協議配套使用實現其功能的還有地址解析協議ARP、逆地址解析協議RARP、網際網路報文協議ICMP、網際網路組管理協議IGMP。 TCP/IP網路使用32位長度的地址以標識一台計算機和同它相連的網路,它的格式為:IP地址=網
絡地址+主機地址。IP地址是通過它的格式分類的,它有四種格式:A類、B類、C類、D類。如下所示
格式位數主機地址:A類0網路(7位)主機地址(24位)、
B類10網路(14位)主機地址(16位)、C類110網路(21位)主機地址(8位)、D類1110多路通信地址(28位)、未來的格式11110將來使用。這樣,A類地址空間為0-127,最大網路數為126,最大主機數為16,777,124;B類地址空間為128-191,最大網路數為16384,最大主機數為65,534;C類地址空間為192-223,最大網路數為2,097,152,最大主機數為254;D類地址空間為224-254。 C類地址空間分配概況。分配區域地址空間:多區域192.0.0.0~193.255.255.255、歐洲:194.0.0.0~195.255.255.255、其他:196.0.0.0~197.255.255.255、北美:197.0.0.0~199.255.255.255、中南美:200.0.0.0~201.255.255.255、太平洋地區:202.0.0.0~203.255.255.255、其他:204.0.0.0~205.255.255.255、其他:206.0.0.0~207.255.255.255。註:其中「多區域」表示執行該計劃前已經分配的地址空間;「其他」表示已指定名稱的地區之外的地理區劃。
特殊格式的IP地址:廣播地址:當網路或主機標志符欄位的每位均設置為1時,這個地址編碼標識著該數據報是一個廣播式的通信,該數據報可以被發送到網路中所有的子網和主機。例如,地址128.2.255.255意味著網路128.2上所有的主機。本網路地址:IP地址的主機標識符欄位也可全部設置為0,表示該地址作為「本主機」地址。網路標識符欄位也可全部設置為0,表示「本網路」。如,128.2.0.0表示網路地址為128.2的網路。使用網路標識符欄位全部設置為0的IP地址在一台主機不知道網路的IP地址時時是很有用的。私有的IP地址:在有些情況下,一個機構並不需要連接到Internet或另一個專有的網路上,因此,無須遵守對IP地址進行申請和登記的規定。該機構可以使用任何的地址。在RFC1597中,有些IP地址是用作私用地址的:A類地址:10.0.0.0到10.255.255.255。B類地址:172.16.0.0到172.31.255.255.255。C類地址:192.168.0.0到192.168.255.255。 ARP協議是「AddressResolutionProtocol」(地址解析協議)的縮寫。在區域網中,網路中實際傳輸的是「幀」,幀裡面是有目標主機的MAC地址的。在乙太網中,一個主機要和另一個主機進行直接通信,必須要知道目標主機的MAC地址。但這個目標MAC地址是如何獲得的呢?它就是通過地址解析協議獲得的。所謂「地址解析」就是主機在發送幀前將目標IP地址轉換成目標MAC地址的過程。ARP協議的基本功能就是通過目標設備的IP地址,查詢目標設備的MAC地址,以保證通信的順利進行。協議屬於鏈路層的協議在乙太網中的數據幀從一個主機到達網內的另一台主機是根據48位的乙太網地址(硬體地址)來確定介面的,而不是根據32位的IP地址。內核(如驅動)必須知道目的端的硬體地址才能發送數據。當然,點對點的連接是不需要ARP協議的。 ARP協議的數據結構:
以下是引用片段:
typedefstructarphdr
{
unsignedshortarp_hrd;/*硬體類型*/
unsignedshortarp_pro;/*協議類型*/
unsignedchararp_hln;/*硬體地址長度*/
unsignedchararp_pln;/*協議地址長度*/
unsignedshortarp_op;/*ARP操作類型*/
unsignedchararp_sha[6];/*發送者的硬體地址*/
unsignedlongarp_spa;/*發送者的協議地址*/
unsignedchararp_tha[6];/*目標的硬體地址*/
unsignedlongarp_tpa;/*目標的協議地址*/
}ARPHDR,*PARPHDR; 為了解釋ARP協議的作用,就必須理解數據在網路上的傳輸過程。這里舉一個簡單的PING例子。
假設我們的計算機IP地址是192.168.1.1,要執行這個命令:ping192.168.1.2.該命令會通過ICMP協議發送ICMP數據包。該過程需要經過下面的步驟:1、應用程序構造數據包,該示例是產生ICMP包,被提交給內核(網路驅動程序);2、內核檢查是否能夠轉化該IP地址為MAC地址,也就是在本地的ARP緩存中查看IP-MAC對應表;3、如果存在該IP-MAC對應關系,那麼跳到步驟9;如果不存在該IP-MAC對應關系,那麼接續下面的步驟;4、內核進行ARP廣播,目的地的MAC地址是FF-FF-FF-FF-FF-FF,ARP命令類型為REQUEST(1),其中包含有自己的MAC地址;5、當192.168.1.2主機接收到該ARP請求後,就發送一個ARP的REPLY(2)命令,其中包含自己的MAC地址;6、本地獲得192.168.1.2主機的IP-MAC地址對應關系,並保存到ARP緩存中;7、內核將把IP轉化為MAC地址,然後封裝在乙太網頭結構中,再把數據發送出去;使用arp-a命令就可以查看本地的ARP緩存內容,所以,執行一個本地的PING命令後,ARP緩存就會存在一個目的IP的記錄了。當然,如果你的數據包是發送到不同網段的目的地,那麼就一定存在一條網關的IP-MAC地址對應的記錄。知道了ARP協議的作用,就能夠很清楚地知道,數據包的向外傳輸很依靠ARP協議,當然,也就是依賴ARP緩存。要知道,ARP協議的所有操作都是內核自動完成的,同其他的應用程序沒有任何關系。同時需要注意的是,ARP協議只使用於本網路。 具有本地磁碟的系統引導時,一般是從磁碟上的配置文件中讀取IP地址。但是無盤機,如X終端或無盤工作站,則需要採用其他方法來獲得IP地址。網路上的每個系統都具有唯一的硬體地址,它是由網路介面生產廠家配置的。無盤系統的RARP實現過程是從介面卡上讀取唯一的硬體地址,然後發送一份RARP請求(一幀在網路上廣播的數據),請求某個主機響應該無盤系統的IP地址(在RARP應答中)。在概念上這個過程是很簡單的,但是實現起來常常比ARP要困難。RARP的正式規范是RFC903[Finlaysonetal.1984]。 RARP的分組格:RARP分組的格式與ARP分組基本一致。它們之間主要的差別是RARP請求或應答的幀類型代碼為0x8035,而且RARP請求的操作代碼為3,應答操作代碼為4。對應於ARP,RARP請求以廣播方式傳送,而RARP應答一般是單播(unicast)傳送的。RARP伺服器的設計:雖然RARP在概念上很簡單,但是一個RARP伺服器的設計與系統相關而且比較復雜。相反,提供一個ARP伺服器很簡單,通常是TCP/IP在內核中實現的一部分。由於內核知道IP地址和硬體地址,因此當它收到一個詢問IP地址的ARP請求時,只需用相應的硬體地址來提供應答就可以了。
作為用戶進程的RARP伺服器:RARP伺服器的復雜性在於,伺服器一般要為多個主機(網路上所有的無盤系統)提供硬體地址到IP地址的映射。該映射包含在一個磁碟文件中。由於內核一般不讀取和分析磁碟文件,因此RARP伺服器的功能就由用戶進程來提供,而不是作為內核的實現的一部分。更為復雜的是,RARP請求是作為一個特殊類型的乙太網數據幀來傳送的。這說明RARP伺服器必須能夠發送和接收這種類型的乙太網數據幀。在附錄A中,我們描述了SBD分組過濾器、SUN的網路介面栓以及SVR4數據鏈路提供者介面都可用來接收這些數據幀。由於發送和接收這些數據幀與系統有關,因此RARP伺服器的實現是與系統捆綁在一起的。
每個網路有多個RARP伺服器:RARP伺服器實現的一個復雜因素是RARP請求是在硬體層上進行廣播的,這意味著它們不經過路由器進行轉發。為了讓無盤系統在RARP伺服器關機的狀態下也能引導,通常在一個網路上(例如一根電纜)要提供多個RARP伺服器。當伺服器的數目增加時(以提供冗餘備份),網路流量也隨之增加,因為每個伺服器對每個RARP請求都要發送RARP應答。發送RARP請求的無盤系統一般採用最先收到的RARP應答(對於ARP,我們從來沒有遇到這種情況,因為只有一台主機發送ARP應答)。另外,還有一種可能發生的情況是每個RARP伺服器同時應答,這樣會增加乙太網發生沖突的概率。 ICMP的作用:由於IP協議的兩個缺陷:沒有差錯控制和查詢機制,因此產生了ICMP。ICMP主要是為了提高IP數據報成功交付的機會,在IP數據報傳輸的過程中進行差錯報告和查詢,比如目的主機或網路不可到達,報文被丟棄,路由阻塞,查詢目的網路是否可以到達等等。
ICMP有兩種報文類型:差錯報告報文和詢問報文。差錯報告報文:終點不可到達(由於路由表,硬體故障,協議不可到達,埠不可達到等原因導致,這時路由器或目的主機向源站發送終點不可到達報文);源站抑制(發生擁塞,平衡IP協議沒有流量控制的缺陷);超時(環路或生存時間為0);參數問題(IP數據報首部參數有二義性);改變路由(路由錯誤或不是最佳)。詢問報文:回送請求或回答(用來測試連通性,如:PING命令);時間戳請求或回答(用來計算往返時間或同步兩者時間);地址掩碼請求或回答(得到掩碼信息);路由詢問或通告(得知網路上的路由器信息)。ICMP是網際(IP)層的協議,它作為IP層數據報的數據,加上數據報的首部,組成數據報發送出去。 應用層的PING(PacketInterNetGroper)命令用來測試兩個主機之間的連通性,PING使用了ICMP回送請求與回送回答報文,屬於ICMP詢問報文,它是應用層直接使用網路層ICMP的一個特例,它沒有通過運輸層的TCP或UDP。IP數據報首部的協議欄位:IP報文首部的協議欄位指出了此數據報是使用的何種協議,以便使目的主機的網路層能夠知道如何管理協議
網際網路組管理協議(IGMP)被IP主機用於向所有的直接相鄰的多播路由器報告它們的多播組成員關系。本文檔只描述在主機和路由器之間的確定組成員關系的IGMP應用。作為多播組成員的路由器應當還能表現為一台主機,甚至能對自己的查詢作出響應。IGMP還可以應用在路由器之間,但這種應用不在這里描述。就像ICMP一樣,IGMP作為整合在IP裡面的一部分。所有希望接收IP組播的主機都應當實現IGMP。IGMP消息被封裝在IP數據報中,IP協議號為2。本文檔所描述的所有IGMP消息在發送時TTL都為1,並在它們的IP首部中含有一個路由器警告選項。主機所關心的所有IGMP消息都具有以下格式:8位類型+8位最大響應時間+16位校驗和+32位組地址。 組播協議包括組成員管理協議和組播路由協議。組成員管理協議用於管理組播組成員的加入和離開,組播路由協議負責在路由器之間交互信息來建立組播樹。IGMP屬於前者,是組播路由器用來維護組播組成員信息的協議,運行於主機和和組播路由器之間。IGMP 信息封裝在IP報文中,其IP的協議號為2。
若一個主機想要接收發送到一個特定組的組播數據包,它需要監聽發往那個特定組的所有數據包。為解決Internet上組播數據包的路徑選擇,主機需通過通知其子網上的組播路由器來加入或離開一個組,組播中採用IGMP來完成這一任務。這樣,組播路由器就可以知道網路上組播組的成員,並由此決定是否向它們的網路轉發組播數據包。當一個組播路由器收到一個組播分組時,它檢查數據包的組播目的地址,僅當介面上有那個組的成員時才向其轉發。
IGMP提供了在轉發組播數據包到目的地的最後階段所需的信息,實現如下雙向的功能: 主機通過IGMP通知路由器希望接收或離開某個特定組播組的信息。 路由器通過IGMP周期性地查詢區域網內的組播組成員是否處於活動狀態,實現所連網段組成員關系的收集與維護。 IGMP共有三個版本,即IGMP v1、v2 和 v3。
Ⅲ ARP協議屬於網路層還是數據鏈路層
很多教科書和培訓教材上,都把ARP協議劃分到網路層。我想主要的原因在於ARP協議屬於TCP/IP協議簇,而在TCP/IP模型中,所有定義的協議至少是在網際層(或稱網路層,IP層)。
但是,按照OSI的標准,當數據向下傳遞時,每層會加上自己的信息,各層互不幹擾.這樣當網路層的IP包進入鏈路層時,鏈路層該如何加這個頭部的目標信息呢?它要依靠ARP協議來完成.顯然如何加鏈路頭並不是網路層的功能.而且,ARP協議工作時,並不使用IP的包頭。所以也有很多人說,ARP是鏈路層的。
可以說,在TCP/IP模型中,ARP協議屬於IP層;在OSI模型中,ARP協議屬於鏈路層。
在sniffer軟體中,捕獲協議數據時,如果使用IP地址是無法捕獲到ARP包的,因為IP地址是ARP協議的載荷,不在包頭中。但ARP協議的載荷中,也並不包含任何上層的IP數據包。所以,構造和使用ARP協議的主體理解IP地址。從這個角度考慮,將ARP協議劃分到IP層也有一定道理。
我覺得邏輯上應該處於鏈路層,但是在抓包的時候,ARP和RARP的數據包是封裝在鏈路層的數據包里
Ⅳ 網路層協議有哪些
arp協議沒有協議號,怎麼能算作是網路層協議呢?而且arp的分組直接封裝在鏈路層傳輸,怎麼可能會屬於網路層呢?
Ⅳ 下列協議屬於網路層的是( )。 A. ARP B. OSPF C. RIP D. BGP
ARP直接封裝在二層以太幀格式內,OSPF封裝在IP包頭之上,RIP封裝在UDP內,BGP在TCP之上。
沒有明顯的界限說ARP就屬於網路層,OSPF就是傳輸層。但RIP和BGP是比較分明的,屬於應用層,因為傳輸層為其傳送路由前綴。
在這個題目里只能說A比較准確。
Ⅵ ARP協議是網路層的還是數據鏈路層的協議
很多教科書和培訓教材上,都把ARP協議劃分到網路層。我想主要的原因在於回ARP協議答屬於TCP/IP協議簇,而在TCP/IP模型中,所有定義的協議至少是在網際層(或稱網路層,IP層)。
但是,按照OSI的標准,當數據向下傳遞時,每層會加上自己的信息,各層互不幹擾.這樣當網路層的IP包進入鏈路層時,鏈路層該如何加這個頭部的目標信息呢?它要依靠ARP協議來完成.顯然如何加鏈路頭並不是網路層的功能.而且,ARP協議工作時,並不使用IP的包頭。所以也有很多人說,ARP是鏈路層的。
可以說,在TCP/IP模型中,ARP協議屬於IP層;在OSI模型中,ARP協議屬於鏈路層。
在sniffer軟體中,捕獲協議數據時,如果使用IP地址是無法捕獲到ARP包的,因為IP地址是ARP協議的載荷,不在包頭中。但ARP協議的載荷中,也並不包含任何上層的IP數據包。所以,構造和使用ARP協議的主體理解IP地址。從這個角度考慮,將ARP協議劃分到IP層也有一定道理。
我覺得邏輯上應該處於鏈路層,但是在抓包的時候,ARP和RARP的數據包是封裝在鏈路層的數據包里
Ⅶ 網路協議分別是哪七層協議
根據建議X.200,OSI將計算機網路體系結構劃分為以下七層,標有1~7,第層在底部。 現「OSI/RM」是英文「Open Systems Interconnection Reference Model」的縮寫。
第7層 應用層
應用層(Application Layer)提供為應用軟體而設的界面,以設置與另一應用軟體之間的通信。例如: HTTP,HTTPS,FTP,TELNET,SSH,SMTP,POP3等。
第6層 表示層
表示層(Presentation Layer)把數據轉換為能與接收者的系統格式兼容並適合傳輸的格式。
第5層 會話層
會話層(Session Layer)負責在數據傳輸中設置和維護電腦網路中兩台電腦之間的通信連接。
第4層 傳輸層
傳輸層(Transport Layer)把傳輸表頭(TH)加至數據以形成數據包。傳輸表頭包含了所使用的協議等發送信息。例如:傳輸控制協議(TCP)等。
第3層 網路層
網路層(Network Layer)決定數據的路徑選擇和轉寄,將網路表頭(NH)加至數據包,以形成分組。網路表頭包含了網路數據。例如:互聯網協議(IP)等。
第2層 數據鏈路層
數據鏈路層(Data Link Layer)負責網路定址、錯誤偵測和改錯。當表頭和表尾被加至數據包時,會形成幀。數據鏈表頭(DLH)是包含了物理地址和錯誤偵測及改錯的方法。數據鏈表尾(DLT)是一串指示數據包末端的字元串。例如乙太網、無線區域網(Wi-Fi)和通用分組無線服務(GPRS)等。分為兩個子層:邏輯鏈路控制(logic link control,LLC)子層和介質訪問控制(media access control,MAC)子層。
第1層 物理層
物理層(Physical Layer)在局部區域網上傳送數據框(frame),它負責管理電腦通信設備和網路媒體之間的互通。包括了針腳、電壓、線纜規范、集線器、中繼器、網卡、主機適配器等。
其中高層(即7、6、5、4層)定義了應用程序的功能,下面3層(即3、2、1層)主要面向通過網路的端到端的數據流。
Ⅷ 網路層分為哪幾種協議
TCP/IP網路層的核心是IP協議,與協議配套使用實現其功能的還有地址解析協議ARP、逆地址解析協議RARP、網際網路報文協議ICMP、網際網路組管理協議IGMP。
Ⅸ TCP/IP協議包括網路層、_________、傳輸層和應用層。
TCP/IP(Transmission Control Protocol/Internet Protocol,傳輸控制協議/網路協議協議)是Internet最基本的協議,簡單的說,就是由底層的IP協議和TCP協議組成的。
TCP/IP參考模型共有四層:傳輸層、應用層、Internet層、網路層。與OSI參考模型比,TCP/IP參考模型沒有表示層和會話層。
傳輸層:為兩個用戶進程之間建立、管理和拆除可靠而又有效的端到端連接。
應用層:它定義了應用程序使用互聯網的規程。
Internet層:它定義了將數據組成正確幀的規程和在網路中傳輸幀的規程,幀是指一串數據,它是數據在網路中傳輸的單位。
網路層:本層定義了互聯網中傳輸的「信息包」格式,以及從一個用戶通過一個或多個路由器到最終目標的""信息包""轉發機制。
這里選B,即互聯層
Ⅹ 網路協議中那些屬於數據鏈路層協議
很多教科書和培訓教材上,都把arp協議劃分到網路層。我想主要的原因在內於arp協議容屬於tcp/ip協議簇,而在tcp/ip模型中,所有定義的協議至少是在網際層(或稱網路層,ip層)。
但是,按照osi的標准,當數據向下傳遞時,每層會加上自己的信息,各層互不幹擾.這樣當網路層的ip包進入鏈路層時,鏈路層該如何加這個頭部的目標信息呢?它要依靠arp協議來完成.顯然如何加鏈路頭並不是網路層的功能.而且,arp協議工作時,並不使用ip的包頭。所以也有很多人說,arp是鏈路層的。
可以說,在tcp/ip模型中,arp協議屬於ip層;在osi模型中,arp協議屬於鏈路層。
在sniffer軟體中,捕獲協議數據時,如果使用ip地址是無法捕獲到arp包的,因為ip地址是arp協議的載荷,不在包頭中。但arp協議的載荷中,也並不包含任何上層的ip數據包。所以,構造和使用arp協議的主體理解ip地址。從這個角度考慮,將arp協議劃分到ip層也有一定道理。
我覺得邏輯上應該處於鏈路層,但是在抓包的時候,arp和rarp的數據包是封裝在鏈路層的數據包里