【互联网及其应用】第2章互联网技术
一、互聯網的基本技術
1.1 互聯網的結構
互聯網具有一種獨特的結構,它是以通信網絡的體系結構為基礎,將不同的網絡技術統起來的一種高級技術,是一種解決了異種網的通信問題,可向用戶提供一致的通信服務的結構。
互聯網結構的特點:
①對用戶隱藏網絡的底層特點,用戶不必了解硬件連接的細節
②不指定網絡互連的拓撲結構,尤其在增加新的網絡時不要求全互聯或嚴格地按星形連接。
③能通過各種網絡收發數據。
④網絡的所有計算機共享一個全局的標識符(域名或地址)。
⑤用戶界面獨立于網絡,即建立通信和傳輸數據的一系列操作與低層網絡技術無關。
在用戶看來,互聯網是一個統一的網絡。在某種意義上,可以把它看成是一個虛擬網:在邏輯上它是統一的、獨立的,在物理上則由不同的網絡互連而成。
應用TCP/IP技術實現網絡互連
互聯網通過TCP/IP技術實現互連。TCP/IP技術實質上是在低層網絡技術和高層應用程序之間增加一個中間軟件層,以此屏蔽和抽象硬件細節,這樣互連的網絡便以一個一致性的大網的面目出現。
互聯網中含有許多不同的復雜網絡和不同類型的計算機,將它們連接在一起又能互相通信,依靠的是TCP/P協議。按照這個協議,接入互聯網的每一臺計算機,包括路由器在內,都要指定一個唯一的地址標識,這個地址標識叫IP地址。
IP地址具有固定、規范的格式,同時具有唯一性,即所有接入互聯網的計算機都具有唯一的IP地址。
使用中間計算機實現網關
互聯網中各種網絡之間的連接是借助中間計算機實現的。
網絡連接包含兩層內容:①兩個網絡要通過一臺中間計算機實現物理連接,這臺中間計算機同時屬于兩個網絡;②中間計算機要實現在兩個網絡間的分組交換,涉及尋找路徑和協議轉換等問題。
1.2 TCP/IP協議
網絡協議:要實現網絡的互聯必須遵守一個共同的協議,在這個協議的管理之下進行網絡及各種網絡間的互聯。
20世紀70年代末,形成了應用于ARPA-NET 網絡的網間協議簇–TCP/IP,即傳輸控制協議(TCP)和網際協議(IP)。
TCP/IP協議包含底層協議規范,如TCP和IP,也包含應用層協議規范,如電子郵件、終端仿真、文件傳輸等。
TCP/IP協議的基本概念
TCP/IP協議是互聯網采用的協議標準,也是全世界采用的最廣泛的工業標準。(通常用TCP/IP協議來代辦整個互聯網協議系列)。
TCP/IP協議簇
在TCP/IP協議簇中,IP和TCP一起組成了TCP/IP協議簇的核心。
【(1)網際協議】
網際協議(IP)是互聯網最基本、最重要的協議。
IP協議的3個基本功能:①基本數據單元的傳送,規定了通過TCP/IP網的數據的格式。②IP協議軟件執行路由功能,選擇傳遞數據的路徑。③確定主機和路由器如何處理分組的規則,以及產生差錯報文后的處理方法。
把IP協議定義的分組稱為IP數據報。
IP協議定義的數據報是有限長的,包括報頭以及數據,報頭信息包括源地址、目的地址、報文長度等,由接收終端系統的主機和路由器處理報頭信息。
互聯網如何在不能識別IP數據報格式的網絡之間發送IP數據報呢?
-互聯網采用了網絡分組的辦法,即把IP數據報放在一個網絡分組中,將它從某個網絡上發送出去。當網絡分組到達下一臺計算機時,該計算機“打開”網絡分組并取出數據報。當檢查發現分組的目的地址不是本計算機時就生成一個新的網絡分組,把數據報再“裝入”其中并傳送到下個網絡。如此反復,直至到達目的地,目的地計算機上的軟件將分組“打開”,對數據報進行處理。
每個主機和路由器保持一張路徑選擇表,對每個可能的目的網絡,路徑選擇表給出IP數據報應該送往下一個路由器的地址以及到達目的地址的步數。
【(2)地址解析協議(ARP)和反向地址解析協議(RARP)】
在局域網中,所有站點是通過網絡介質訪問控制層的MAC地址來確定報文發往的目的地址的;在互聯網中,目的地址是靠IP規定的地址來確定的。
由IP地址不能算出MAC地址,因此需要通過IP協議簇中另外兩個協議動態地發現MAC地址和IP地址間的關系,這兩個協議分別是地址解析協議(Address Resolution Protocol,ARP)和反向地址解析協議(Reversed Address Resolution Protocol,RARP)。
ARP和RARP(對無盤站點很重要)都是通過廣播消息的方法工作(IP地址對應的MAC地址)。
【(3)傳輸控制協議(TCP)】
傳輸控制協議(TCP)是為了解決互聯網上分組交換通道中數據流量超載和傳輸擁塞的問題而設計的,使數據傳輸和通信更加可靠。
TCP負責將數據從發送方正確地傳遞到接收方,是端到端的數據流傳送。TCP是面向連接的,因此在傳送數據之前,先要建立連接。數據有可能在傳輸中丟失,TCP能檢測到數據的丟失,并且重發數據,直至數據被正確地、完全地接收。
TCP對通過互聯網發送數據提供可靠的傳送機制,不管經過多少個網絡,它總能保證數據可靠、按次序、完全、無重復地傳遞。
TCP功能包括為了取得可靠的傳輸而進行的分組丟失檢測,收不到確認的信息則自動重傳,以及處理延遲的重復數據報。它對高層協議的數據結構不產生影響,對來自高層協議的數據就像它們是不間斷的數據流一樣。因此,對這些數據的所有處理都是由高層協議進行的。TCP還能進行流量控制和差錯控制。
【(4)用戶數據協議(UDP)】
UDP的報頭格式只有源端口、目的端口、長度和校驗和。它采用無連接的方式向高層提供服務,與遠方的UDP實體不建立端對端的連接,只將數據報送上網絡或者從網絡上接收數據,它不保證數據的可靠投遞。UDP根據端口號對應用程序進行多路復用,并利用校驗和檢查數據的完整性,如Ping、TFTP、SNMP等高層應用就采用UDP協議輸。
TCP/IP協議與OSI參考模型間的對應關系
對應開放系統互連OSI模型的層次結構,可將TCP/IP協議系列分成4個層次的結構,分別對應OSI的數據鏈路層、網絡層、傳輸層和應用層。
(1)數據鏈路層與TCP/IP協議的對應關系
數據鏈路層也稱網絡接口層,對應的協議有地址解析協議(ARP)和反向地址解析議(RARP),其功能是接收和發送IP數據報。它包括設備驅動器和計算機網絡接口卡,以及其他具體的物理接口。
(2)網絡層與TCP/IP協議的對應關系
網絡層也稱互聯網層,即網絡互聯層。對應的協議有IP和ICMP。它處理網上分組的傳送以及路由至目的站點。它接收請求,將傳輸層傳來的數據包裝成IP數據報,使用數據報路由算法,以決定其路由去向,發送至目的站點。它還處理來自網上的數據包,并使用路由算法,以決定是本地接收或轉發出去。
(3)傳輸層與TCP/IP協議的對應關系
傳輸層提供兩臺計算機之間端對端的數據傳送,對應的協議有TCP和UDP。TCP在兩臺計算機之間提供可靠的數據流,它的功能包括將來自應用層的數據分成適合于網絡層的數據格式,響應接收的分組、設置超時的時間。
(4)應用層與TCP/IP協議的對應關系
應用層處理特定的應用,對應的協議主要包括遠程登錄(Telnet)、文件傳送協議(FTP)、簡單郵件傳送協議( Simple Mail Transfer Protocol,FTP)、簡單網絡管理協議(Simple Network Management Protocol,SNMP)和NFS。
用戶的應用程序可訪問相應的服務,選擇傳送類別(數據報或者是字節流)并將它們傳至傳輸層。
TCP與IP協同工作
IP提供了將數據分組從源計算機傳送到目的計算機的方法,而TCP提供了解決數據在互聯網中傳送過程中丟失數據報、重復傳送數據報和數據報失序的方法,從而保證了數據的可靠傳輸。
IP提供了靈活性(指IP可以使用各種類型的網絡和幾乎所有類型的計算機通信技術),而TCP提供了可靠性(TCP隨時監視互聯網的運行情況并自動適應,即使在互聯網暫時出現擁塞的情況下,TCP也能保證可靠的通信)。
TCP/IP是一組高效率的軟件,它既能在小型、低速的計算機上運行,也能在大型、高速的計算機上運行,在微型計算機上也運行得很好。
高層協議與TCP/IP連接
在TCP/IP協議簇中包含了許多高層協議提供的非常廣泛的應用,如網絡管理、文件傳輸、終端仿真、電子郵件等。
TCP和UDP通過端口號與高層應用交換數據,在接收方,IP協議的標識號先于端口號進行檢查,而TCP和UDP對端口號的使用彼此獨立。
1-255的端口號稱為公用端口號,許多操作系統將這些端口號當做受保護的固定端口號。這些端口號只能被具有特殊操作系統權限的進程使用,剩余的端口才能被普通的進程使用。
1.3 IP 地址
為了使接入互聯網的主機在通信時能夠相互識別,互聯網上的每一臺主機都分配有一個唯一的IP地址,也稱為網際地址。IP地址類似于電話網中的電話號碼,它是每個主機和網絡設備的地址號碼。
IP地址的組成
IP地址是一個32位的二進制無符號數,為了表示方便,國際通行一種“點分十進制“表示法:即將32位地址按字節分為4段,高字節在前,每個字節用十進制數表示出來,并且各字節之間用點號“.”隔開。這樣,IP地址表示成了一個用點號隔開的4組數字,每組數字的取值范圍只能是0~255。
IP協議的地址劃分成兩部分或三部分:第一部分指定網絡的地址,第二部分(如果存在)指定子網的地址,最后一部分指定主機的地址。
IP地址的類型
IP協議的尋址方式支持5種不同的網絡類型,地址格式的最左邊的一個或多個二進制通常用來指定網絡的類型。
(1)A類網絡地址
最高位為0,主要是為大型網絡設計的,它提供的網絡地址字段的長度僅為7位,主機字段的長度達到24位,其格式為nnn.hhh.hhh.hhh(001.hhh hhh.hhh…127.hhh.hhh.hhh)
其中127.0.0.1是一個特殊IP地址,表示主機本身,用于本地機器上的測試和進程間的通信。
(2)B類網絡地址
最高兩位為10,分別為網絡地址字段和主機地址分配了14位和16位,這種分配方式在網絡地址和主機地址之間提供了一種很好的組合,其格式為:nnn.nnn.hhh.hhh(128.001.hhh.hhh…191.254.hhh.hhh)
(3)C類網絡地址
最高3位為110(二進制數),分別為網絡地址字段和主機地址分配了22位和8位,這種分配方式在很大程度上限制了同一網絡中所能容納的主機數目,其格式為:nnn. nnn. nnn hhh(192.00.0h2.255254h)
(4)D類網絡地址
4個最高的二進制位按順序分別設置為1110,在RFC1112中規定,即將其留作IP多路復用組使用,如224.0.0.5和224.0.0.6分配給了OSPF。
(5)E類網絡地址
按P協議規定也是留作將來使用,其中4個最高的二進制位按順序分別設置為1111。
當主機標識部分的二進制編碼全為0時,該網絡號解釋為本地地址,當主機標識部分的二進制編碼全為1時,該網絡號解釋為本地網絡內的廣播地址,用于網絡上的所有主機。
子網
如果網段內的主機數目不多,可以用主機的某些地址把網段劃分成更小的單元,即子網。子網的劃分為網絡管理員提供了更大的靈活性。
子網掩碼
從主機地址中借用來表示子網地址的長度是可以改變的。為了指定有多少個二進制位用來表示子網的地址,IP協議提供了子網掩碼的概念。子網掩碼使用了與IP地址相同的格式和表示方法,它將IP地址格式中除了被指定為主機地址之外的所有二進制位均設置為1。
在同一網段內,各個主機的子網掩碼原則上應相同。
默認時,A、B、C三類網絡的掩碼如下:A類地址:255.0.0.0 B類地址:255.255.0.0 C類地址:255.255.255.0
劃分子網的目的是區分不同的主機是否處在相同的網段,處于同一網段上的主機間可以直接通信,而且廣播信息也被封閉在同一網段內。
不同網段間的主機進行通信時,必須通過路由器才能互相訪問。
那么主機和網絡是如何判斷信源主機和信宿主機是否在同一網段上呢?
-利用網絡的掩碼來區分。方法是把信源主機的地址和信宿主機的地址分別與所在網段的掩碼進行二進制“與”操作,如果產生的兩個結果相同,則在同一網段;如果產生的兩個結果不同,則兩臺主機不在同一網段,這兩臺主機要進行相互訪問時,必須通過一臺路由器進行路由轉換。
1.4 域名
1984年互聯網采用域名服務系統(DNS域名管理系統)對IP進行管理。
計算機的命名
計算機命名基于以下3個因素:
①互聯網允許每個用戶為計算機命名。
②互聯網允許用戶輸入計算機的名字。
③互聯網提供了一種將計算機的名字翻譯成計算機地址的服務。
互聯網上每臺計算機的名字必須能唯一地區別于其他計算機。
域名系統的結構
域名系統的結構是層次型的,如cn代表中國的計算機網絡,cn就是一個域。域下面按領域又分子域,子域下面又有子域。在表示域名時,自右到左越來越小,用圓點“.”分開。例如,bjtu. edu. en是一個域名,cn代表中國域;edu表示網絡域cn下的一個子域,代表教育界;bjtu則是edu下的一個子域,代表北京交通大學。
一個計算機也可以命名,稱為主機名。在表示一臺計算機時把主機名放在其所屬的域名之前,用圓點分隔開,就形成了主機域名。便可以在全球范圍內區分不同的計算機了。
一臺計算機的全名應是其局部名字后跟一個點號,再后面是其公司或組織的名字。為了防止重名,互聯網的命名機制給出了用戶所屬組織的類型的約束名字。例如,北京交通大學( Beijing Jiaotong University)是一個教育單位( Education Unit),則北京交通大學的所有聯網的計算機都有如下的后綴: ic.bjtu.edu.cn。以保證不同類型的組織的任意兩臺計算機全名互不相同。
計算機名由局部名、組織名和組織類型名3部分組成。通常,每個組織都規定其所有聯網計算機的名字,包括計算機名、部門名,然后接組織的后綴。這樣,北京交通大學信息中心的所有上網的計算機的名字的后綴為:ic. bjtu. edu.cn。若計算機名為center,則center計算機的全名為:center. ic. bjtu. edu. en。其中, center是局部名,表示主機的名字為 center;ic.bjtu是組織名,表示這臺主機屬于北京交通大學信息中心;edu是組織類型名,表示教育界;cn是域,表示這臺主機在中國。
域名系統與IP地址的關系
互聯網通信軟件要求在發送和接收數據報時必須使用數字表示的IP地址。因此,一個應用程序在與用字母表示名字的計算機上的應用程序通信之前,必須將名字翻譯成IP地址。互聯網提供了一種自動將名字翻譯成IP地址的服務。這就是域名系統的主要功能。
域名系統與IP地址有映射關系。它也實行層次型管理。在訪問一臺計算機時,既可用IP地址表示,也可用域名表示。
域名與IP地址的關系如同人的姓名與身份證號碼的關系一樣。互聯網上有很多負責將主機域名轉為IP地址的服務系統-----域名服務器(DNS),這個服務系統會自動將域名翻譯為IP地址。
一般情況下,一個域名對應一個IP地址,但并不是每個IP地址都有一個域名和它對應,對于那些不需要他人訪問的計算機只有IP地址,而沒有域名。
有時一個IP地址還對應幾個域名。例如,北京交通大學主頁的IP地址是202.112.144.31,它有兩個域名,分別是www.bjtu.edu.cn和www.njtu.edu.cn。使用IP地址或上述兩個域名中的任意一個都可以訪問同一個主頁。
域名服務器(DNS)
對于用戶來說,使用域名比直接使用IP地址方便多了,但對于互聯網內部數據傳輸來 說,使用的還是IP地址。域名到IP地址的轉換要用DNS來解決。
每個組織都有一個域名服務器,在其上面存有該組織所有上網計算機的名字及其對應的 IP地址。當某個應用程序需要將一個計算機名字翻譯成IP地址時,這個應用程序就與域名服務器建立連接,將計算機名字發送給域名服務器,域名服務器檢索并把正確的IP地址送回給應用程序。當然,計算機名字和相應的IP地址的檢索都是自動的。
DNS實際上是一個服務器軟件,運行在指定的算機上,完成域名–IP地址的轉換。 它把網絡中的主機按樹形結構分成域( Domain)和子域( SubDomain),子域名或主機名在上級域名結構中必須是唯一的。每一個子域都有域名服務器,它管理著本域的域名轉換,各級域名服務器構成一棵樹。這樣,當用戶使用域名查詢目標IP地址時,應用程序先向本地域名服務器請求,本地服務器先查找自己的域名庫,如果找到該域名,則返回IP地址;如果未找到,則分析域名,然后向相關的上級域名服務器發出申請;這樣傳遞下去,直至有個域名服務器找到該域名,返回IP地址。如沒有域名服務器能識別該域名,則認為該域名不可知。
1.5 網絡地址翻譯技術
網絡地址翻譯技術(NAT)解決問題的辦法是:在內部網絡中使用內部地址,通過NAT把內部地址翻譯成公網的IP地址,在互聯網上使用。其具體的做法是把IP包內的地址域用合法的IP地址來替換。
NAT的功能通常被集成到路由器、防火墻、ISDN路由器或者單獨的NAT設備中。NAT設備維護一個狀態表,用來把非法的IP地址映射到合法的IP地址上去。每個包在NAT設備中都被翻譯成正確的IP地址發往下一級,這就給處理器帶來了一定的負擔。 需要注意的是,NAT并不是一種有安全保證的方案,它不能提供類似防火墻、包過濾、隧道等技術的安全性,僅僅在包的最外層改變IP地址。
NAT有3種類型:靜態NAT( (Static NAT)、NAT池( (Pooled NAT)和端口NAT(Port NAT,PAT)。其中靜態NAT設置起來最為簡單,內部網絡中的每個主機都被永久映射成外部網絡中的某個合法地址。而NAT池則是在外部網絡中定義了一系列的合法地址,采用動態分配的方法映射到內部網絡。PAT則是把內部地址映射到外部網絡的一個IP地址的不同端口上。
NAT池
使用NAT池,可以從未注冊的地址空間中提供被外部訪問的服務,也可以從內部網絡訪問外部網絡,而不需要重新配置內部網絡中的每臺機器的IP地址。
采用NAT池意味著可以在內部網中定義很多的內部用戶,通過動態分配的辦法,共享外部IP地址。而靜態NAT則只能形成一一對應的固定映射方式。當NAT池中動態分配的外部IP地址全部被占用后,后續的NAT翻譯申請將會失敗。但許多有NAT功能的路由器有超時配置功能。
NAT池在提供很大靈活性的同時,也影響到網絡原有的管理功能。
使用PAT
PAT:端口地址翻譯
PAT在遠程訪問產品中用的較多,特別是在遠程撥號用戶中。
PAT可以把內網的IP地址映射到外部注冊IP地址的多個端口上。
PAT可以支持同時連接64500個TCP/IP 、UDP/IP。
基于NAT的負載平衡
IP客戶端會在本地緩沖DNS/IP地址解析,從而使它的后續的申請都會到達同一個IP地址,減弱了DNS系列服務器的作用----使用基于NAT的負載平衡方案,則可以避免這個問題。
路由器或其他NAT設備把需要負載平衡的多個IP地址翻譯成一個公用的IP地址,每個TCP連接被NAT送到一個IP地址,而后續的TCP連接則被NAT送到下一個P地址,真正實現了負載平衡。
1.6 動態主機配置協議
動態主機配置協議( Dynamic Host Configuration Protocol,DHCP)在TCP/IP網絡上使客戶機獲得配置信息的協議。它是基于BOOTP協議( BOOTP原本是用于無磁盤主機連接的絡:網絡主機使用 BOOT ROM而不是磁盤啟動并連接上網絡,BOOTP則可以自動地為那些主機設定TCP/IP環境。但 BOOTP有一個缺點:在設定前需要事先獲得客戶端的硬件地址,而且與IP的對應是靜態的。換而言之,BOOTP非常缺乏“動態性”,若在有限的IP資境中,BOOTP的一一對應會造成非常大的浪費),并在BOOTP協議的基礎上添加了自動分配可用網絡地址等功能。這兩個協議可以通過某些機制互操作。
DHCP向網絡主機提供配置參數,它由兩個基本部分組成:一部分是向網絡主機傳送專用的配置信息;另一部分是給主機分配網絡地址。DHCP是基于客戶/服務器模式的,在這種模式下,專門指定的主機分配網絡地址,傳送網絡配置參數給需要的網絡主機,被指定的主機
稱為服務器。
DHCP支持3種IP地址分配方法。第一種是自動分配,DHCP給用戶分配一個永久的IP地址。第二種是動態分配,在這種情況下,用戶可以取得一個IP地址,但有時間限制。第三種是手工分配,在這種情況下,用戶的IP地址是由管理員手工指定的,DHCP服務器只需要將這個指定的P地址傳送給用戶即可。
動態分配是唯一一種允許自動重用地址的機制,這種方法對于臨時上網用戶,而且網絡的IP地址資源又有限的時候特別有用。
手工指定對于管理不希望使用動態方法IP地址的用戶十分方便,不會因為手工指定而和DHCP沖突或和別的已經分配的地址沖突。
DHCP的設計目標如下:
1)DHCP應該是一種機制而不是策略,它必須允許本地系統管理員控制配置參數,本地系統管理員應該能夠對所希望管理的資源進行有效的管理。
2)客戶不需要進行手工配置,應該在客戶不參與的情況下發現適合于本地機的配置參數,并利用這些參數加以配置。
3)不需要對單個客戶配置網格。在通常情況下,網絡管理員沒有必須輸入預先設計好的用戶配置參數。
4)DHCP不需要在每個子網上有一個服務器,DHCP服務器可以和路由器、 BOOTP轉發代理一起工作。
5)DHCP客戶必須對多個DHCP服務器提供的服務作出響應。出于對網絡穩定性與安全性的考慮,有時需要為網絡加入多個DHCP服務器。
6)DHCP必須靜態配置,而且必須以現存的網絡協議實現。
7)DHCP必須能夠和BOOTP轉發代理互操作。
8)DHCP必須能夠為現有的BOOTP客戶提供服務。
下面幾個設計目標是針對網絡層參數而設計的:
1)不允許幾個客戶同時使用一個網絡地址。
2)在DHCP客戶重新啟動后仍然能夠保留原先的配置參數,如果可能,客戶應該被指定為相同的配置參數。
3)在DHCP服務器重新啟動后仍然能夠保留客戶的配置參數,如果可能,即使DHCP機制重新啟動,也應該能夠為客戶分配原有的配置參數。
4)能夠為新加入的客戶自動提供配置參數。
5)支持對特定客戶永久固定分配網絡地址。
1.7 IP組播技術
IP組播技術的概念
IP組播(也稱多址廣播或組播)技術,是一種允許一臺或多臺主機(組播源)發送單一數據包到多臺主機(一次的,同時的)的TCP/IP網絡技術。
組播作為一點對多點的通信,是節省網絡帶寬的有效方法之一。
組播能使一個或多個組播源只把數據包發送給特定的組播組,而只有加入該組播組的主機才能接收到數據包。
目前,IP組播技術被廣泛應用在網絡音頻/視頻廣播、VOD、網絡視頻會議、多媒體遠程教育、推(push)技術(如股票行情等)和虛擬現實游戲等方面。
IP組播地址和組播組
IP組播通信必須依賴于IP組播地址,在IPv4中它是一個D類IP地址,范圍從224.0.0.0到239.255.255.255,并被劃分為局部鏈接組播地址、預留組播地址和管理權限組播地址3類。
局部鏈接組播地址:224.0.0.0–224.0.0.255,是為路由協議和其他用途保留的地址,路由器并不轉發屬于此范圍的IP包。
預留組播地址:224.0.1.0–238.255.255.255,用于全球范圍或網絡協議。
管理權限組播地址:239.0.0.0–239.255.255.255,可供組織內部使用,類似于私有IP地址,不能用于互聯網,可限制組播范圍。
使用同一個IP組播地址接收組播數據包的所有主機構成了一個主機組,也稱為組播組。
一個組播組的成員是隨時變動的,一臺主機可以隨時加入或離開組播組,組播組成員的數目和所在的地理位置也不受限制,一臺主機也可以屬于幾個組播組。
不屬于某一個組播組的主機也可以向該組播組發送數據包。
組播協議
組播協議主要包括組管理協議(IGMP)和組播路由協議。
組管理協議(IGMP):主機使用IGMP通知子網組播路由器,希望加入組播組;路由器使用IGMP查詢本地子網中是否有屬于某個組播組的主機。
組播路由協議:在一個實際網絡中實現組播數據包的轉發,除了要求介于組播源和接收者之間的路由器、交換機、TCP/IP棧、防火墻都支持組播外,還必須在各個互連設備上運行可互操作的組播路由協議。
組播路由協議可分為3類:密集模式協議(如 DVMRP、PIM-DM)、稀疏模式協議(如PIM-SM、CBT)和鏈路狀態協議( MOSPF)。
1.8 IP安全性
互聯網安全機制只建立于應用程序級,如E-mail加密、SNMP v2網絡管理安全、接入安全(HTTP、SSL)等,無法從IP層來保證互聯網的安全。
IPSec( Internet協議安全),它是由IETF定義的一套在網絡層提供IP安全性的協議。
IPSec提供了兩種安全機制:認證和加密。認證機制使IP通信的數據接收方能夠確認數據發送方的真實身份以及數據在傳輸過程中是否被修改。加密機制通過對數據進行加密來保證數據的機密性,以防數據在傳輸過程中被竊聽。
IPSec協議組包含 Authentication Header(AH)協議、 Encapsulating Security Payload(ESP)協議和 Internet Key Exchange(IKE)協
議。AH協議定義了認證的應用方法,提供數據源認證和完整性保證;ESP協議定義了加密和可選認證的應用方法,提供可靠性保證。IKE協議用于密鑰交換。
IPSec的安全服務是由通信雙方建立的安全聯盟(SA)來提供的。SA表示了策略實施的具體細節,包括源/目的地址、應用協議、SPI(安全策略索引)、所用算法/密鑰/長度,它們決定了用來保護數據安全的IPSec協議、模式、算法/密鑰、生存期、抗重播窗口及計數器等。
每一個IPSec結點都包含有一個安全策略庫(SPD)。IPSec系統在處理輸入/輸出IP流時必須參考該策略庫,并根據從SPD中提取的策略對IP流進行不同的處理:拒絕、繞過或進行 IPSec保護。
AH(認證頭)
AH協議為IP通信提供數據源認證、數據完整性和反重播保證,它能保護通信免受篡改,但不能防止竊聽,適合用于傳輸非機密數據。
AH的工作原理是在每一個數據包上添加個身份驗證報頭。此報頭包含一個帶密鑰的hash散列(可以將其當做數字簽名,只是它不使用證書),此hash散列在整個數據包中計算,因此對數據的任何更改將致使散列無效—這樣就提供了完整性保護。
ESP(封裝安全負載)
ESP用于確保IP數據包的機密性(未被別人看過)、數據的完整性及對數據源的身份驗證。
ESP可以單獨使用,也可以和AH結合使用。一般ESP不對整個數據包加密,而是只加密IP包的有效載荷部分,不包括IP頭。但在端對端的隧道通信中,ESP需要對整個數據包加密。
ESP的加密服務是可選的,但如果啟用加密,則也就同時選擇了完整性檢查和認證。因為如果僅使用加密,入侵者就可能偽造包以發動密碼分析攻擊。
IKE(Internet密鑰交換協議)
IKE主要有3項任務:為端點間的認證提供方法、建立新的IPSec連接和管理現有連接。
=========================================================================================================
二、IPv6基礎知識
IPv4采用32位地址長度。
IPv4的局限性:地址短缺(歐洲和亞太地區)、缺乏Qos(服務質量)保證,安全性差,對移動性支持不好等。
20世紀90年代初,互聯網工程任務組(IETF)開始著手下一代互聯網協議(IPng)的制定工作。成立了IPng工作組。主要的工作是定義過渡的協議以確保當前IP版本和新的IP版本長期的兼容性,并支持當前使用和正在出現的基于IP的應用程序。
IPng工作組開始于1991年,經過研究提出了請求說明(RFC)所描述的IPv6,從1995年12月開始進入了互聯網標準化進程。
2.1 IPv6的新特征
IPv6是對IPv4的發展,IPv6保留了IPv4中有用的特性而取消了某些規定。
IPv6新特性:巨大的地址空間,全新的報文結構,全新的地址配置方式,更好的QoS支持,內置的安全性,全新的鄰居發現協議。
巨大的地址空間(在IPv6中IP地址由32位增加到了128位,可支持更多的需要設定地址的結點、更多的地址級別和遠程用戶自動地址配置的方法)。
全新的報文結構(使用新的協議投格式,包括固定頭部和擴展頭部)。
全新的地址配置方式( 支持手工地址配置和有狀態自動地址配置(利用專用的地址分配服務器動態分配地址),無狀態地址配置。)。
更好的QoS支持(IPv6在報頭中新增流標簽的字段,該字段使得網絡中的路由器可以對屬于一個流的數據包進行識別,并提供特殊處理。利用這個標簽,路由器無須打開傳送的內層數據包就可以識別流。)。
內置的安全性(IPv6協議本身支持IPSec,包括AH和ESP等擴展報頭)。
全新的鄰居發現協議(IPv6中的鄰居發現協議是一系列機制,用來管理相鄰結點的交互。該協議用更加有效的組播取代了IPv4中的地址解析協議(ARP))。
2.2 IPv6地址
IPv6地址表示:根據RFC2373的定義,IPv6有3中格式,即首選格式、壓縮格式和內嵌格式。
首選格式:IPv6的128位地址是每16位劃分一段,每段被轉換為一個4位十六進制數,并用冒號隔開。
壓縮格式:當地址中存在一個或多個聯系的16比特0字符時,可以用::(兩個冒號)表示,但是一個IPv6地址中只允許有一個::。
內嵌IPv4地址的IPv6地址:作為過渡機制中使用的一種特殊表示方法。IPv6地址的前面部分使用十六進制表示,而后面部分使用IPv4地址的十進制格式。
IPv6地址類型:單播、組播和任播。
【單播地址】:
IPv6單播地址又分為可聚合全球單播地址、本地鏈路地址、本地站點地址等。
可聚合全球單播地址類似于我們常說的公網地址,它的最高3位固定為001。
本地鏈路地址是IPv6某些機制使用的應用范圍受限的地址類型,它的最高10位固定為1111111010,后接54位全0,因此它的特定前綴就是FE80::/64。
本地站點地址是另一種應用范圍受限的地址類型,類似于IPv4中的私有地址。任何沒有申請到提供商分配的可聚合全球單播地址的組織機構都可以使用本地站點地址。它的最高10位固定為1111111011,后接38位全0。
單播地址中有下列兩種特殊地址:不確定地址和回環地址。
不確定地址:單播地址0:0:0:0:0:0:0:0(也可以記作::)。它不能分配給任何結點。它的一個應用示例是接口在初始狀態、還未分配地址時,可以用未指定地址作為它所發IPv6數據包的源地址。未指定地址不能用做目的地址,也不能用在IPv6路由頭中。
回環地址:單播地址0:0:0:0:0:0:0:1(也可以記作::1)。結點用它來向自身發送IPv6包。它不能分配給任何物理接口。
【組播地址】:
組播是指一個源結點發送的單個數據包能被特定的多個目的結點接收到。在IPv4中,組播地址的最高4位固定為1110;在IPv6中,組播地址的最高8位為11111111。
【任播地址】
任播地址是IPv6特有的地址類型,它用來標識一組網絡接口。路由器會將目標地址是任播地址的數據包發送給距本路由器最近的一個網絡接口。接收方只需要是一組接口中的一個即可。
任播地址從單播地址空間中分配。僅看地址本身,結點是無法區分任播地址與單播地址的。所以,結點必須使用明確的配置從而指明它是一個任播地址。目前,任播地址僅被用于目標地址,且僅分配給路由器。
IPv6 主機地址
通常一臺IPv6主機有多個IPv6地址,即使該主機只有一個物理接口。
一臺IPv6主機可同時擁有以下幾種單播地址:
①每個接口的本地鏈路地址。
②每個接口的單播地址(可以是一個本地站點地址和一個或多個可聚合全球單播地址)。
③回環(Loopback)接口的回環地址(::1)。
此外,每臺主機還需要時刻保持收聽以下組播地址上的信息:
(1)結點本地范圍內所有結點組播地址(FF01::1).
(2)鏈路本地范圍內所有結點組播地址(FF02::1).
(3)請求結點(Solicited-Node)組播地址(如果主機的某個接口加入請求結點組)。
(4)組播組組播地址(如果主機的某個接口加入任何組播組)。
IPv6 路由器地址
一臺IPv6路由器可被分配以下幾種單播地址:
①每個接口的本地鏈路地址。
②每個接口的單播地址(可以是一個本地站點地址和一個或多個可聚合全球單播地址)。
③子網-路由器任意播地址。
④其他任意播地址(可選)。
⑤回環接口的回環地址(::1)。
同樣,除以上這些地址外,路由器需要時刻保持收聽以下組播地址上的信息:
?結點本地范圍內的所有結點組播地址(FF01::1)。
?結點本地范圍內的所有路由器組播地址(FF01::2)。
?鏈路本地范圍內的所有結點組播地址(FF02::1)。
?鏈路本地范圍內的所有路由器組播地址(FF02::2)。
?站點本地范圍內的所有路由器組播地址(FF05::2).
?請求結點(Solicited-Node)組播地址(如果路由器的某個接口加入請求結點組)。
?組播組組播地址(如果路由器的某個接口加入任何組播組)。
2.3 鄰居發現
鄰居發現協議
鄰居發現協議(Neighbor Discovery Protocol,NDP)實現了在IPv4中的地址解析協議(ARP)、控制報文協議(ICMP)中的路由器發現部分、重定向協議的所有功能,并具有鄰居不可達檢測機制。
當一個IPv6結點在網絡上出現時,直接相連的鏈路上的其他IPv6結點可以通過鄰居發現協議發現它,進而獲得它的鏈路層地址。IPv6結點也能通過鄰居發現協議來查找路由器,并維護路徑上處于活動狀態的鄰居結點的可達性信息。
鄰居發現協議解決了連接在同一鏈路的結點之間交互的一系列問題,并提供了如下機制。
①路由器發現:主機如何定位一個處于直連鏈路上的路由器。
②前綴發現:主機如何發現地址前綴序列。
③鏈路參數發現:結點如何獲得諸如鏈路MTU等鏈路參數。
④地址自動配置:結點如何自動為接口配置地址。
⑤地址解析:在僅知道目的結點IP地址的情況下,如何確定目的結點的鏈路層地址。
⑥鄰居不可達檢測:結點如何檢驗原來已經連通的鄰居結點是否還能連通。
⑦下一跳決定:如何把IP目的地址映射為鄰居結點的IP地址。
⑧重復地址檢測:結點如何檢驗所要使用的地址是否已經被其他結點使用。
⑨重定向:由路由器發送,將流量重定向到鏈路上更好的第一跳路由器地址。
鄰居發現的各種功能是通過交換ICMPv6報文實現的。其中定義了5種不同的IC-MPv6報文類型:
1)路由器請求(RS)–當結點主機不愿等待下一次周期性路由器公告,希望路由器立刻發送路由器公告時發送的組播報文。一個正在初始化的結點可以發送路由器請求,這樣它可以馬上得到鏈路上路由器的配置參數。RS是類型編碼為133的ICMP包。源地址是分配給發送主機的地址。如果還沒有分配地址,則使用未指定地址0:0:0:0:0:0:0:0。目的地址是所有路由器的組播地址(FF02::2)。
2)路由器公告(RA)–路由器周期性發送公告報文或對請求進行應答。路由器報告它們的存在,并提供結點配置自己所需要的網絡參數。RA報文不能由主機發出。RA是類型編碼為134的ICMP包。源地址是發送路由器的本地鏈路地址,目的地址是發送路由器請求的結點地址或鏈路范圍內所有結點組播地址(FF02:1)。跳數限制為255,確保非本鏈路的設備不能通過發送RA來試圖干擾通信流。如果非本鏈路設備向本鏈路發送RA,經過路由器以后跳數限制減1,使該包成為非法。接受結點只認為跳數限制是255的RA是有效的。
RA中包含路由器生存時間。路由器生存時間告訴結點它們能將路由器作為默認路由器的時間。其值為0表示該路由器不是候選的默認路由器,不能出現在結點的默認路由器表中。收到RA的結點構造一個默認路由器表。所有發送RA且生存時間不為0的路由器都出現在該列表中。
3)鄰居請求(NS)–允許結點確定鄰居的鏈路層地址,或者檢驗以前獲得的地址現在是否依然有效,同時允許結點判斷鏈路上是否存在重復的IP地址。它是一個類型編碼為135的ICMP消息。IP包的源地址是發請求的結點的單播地址。用做獲得鏈路層地址時,目的地址是關聯在目標IP地址的被請求結點的組播地址;用做可達性確認時,目的地址是單播地址。跳數限制也是255,和RA中一樣,用于確保收到的數據包沒有穿過路由器。
4)鄰居公告(NA)–對鄰居請求所發的應答或者在結點鏈路層地址改變時告知本地鄰居結點其地址的改變。鄰居公告用做應答NS或者在沒有被請求時立即傳播,如鏈路層地址改變等新消息。NA是類型編碼為136的ICMP包。源地址是分配給發送接口的任意有效單播地址。當應答NS時,目的地址是請求包的源地址,或者請求源地址是未指定地址時,目的地址是所有結點地址(FF02:1)。未經請求的宣告目的地址也是所有結點地址。跳數限制是255。
5)重定向–由路由器發送,將流量重定向到鏈路上更好的下一跳路由器地址。
在IPv6中,對結點鏈路層地址的確定就是使用RS和RA來代替IPv4中的ARP。而且IPv6鄰居發現協議比IPv4中的ARP更加高效。
IPv6鄰居發現協議與|Pw地址解析協議的區別
IPv6不再執行地址解析協議(ARP)或反向地址解析協議(RARP),而以鄰居發現協議(NDP)中的相應功能代替。
IPv6鄰居發現協議與IPv4地址解析協議的主要區別如下:
1)IPv4中地址解析協議(ARP)是獨立的協議,負責IP地址到鏈路層地址的轉換,對不同的鏈路層協議要定義不同的ARP協議。IPv6中鄰居發現協議(NDP)包含了ARP的功能,且運行于因特網控制報文協議ICMPv6上,更具有一般性,包括更多的內容,面且適用于各種鏈路層協議。
2)ARP協議以及 ICMPv4路由器發現和lCMPv4重定向報文基于廣播,而NDP協議的鄰居發現報文基于高效的組播和單播。
3)可達性檢測的目的是確認相應IP地址代表的主機或路由器是否還能收發報文,IPv4沒有統一的解決方案。NDP協議中定義了可達性檢測過程,保證IP報文不會發送給“黑洞”。
2.4 地址自動配置
IPv6協議支持地址自動配置,這是一種即插即用的機制。
IPv6結點通過地址自動配置得到IPv6地址和網關地址,解決了用戶配置地址的問題。
主機為其接口自動配置IPv6地址時,需要進行以下步驟:
第一,創建鏈路本地地址;驗證該地址的唯一性。
第二,確定哪些信息需要自動配置。
第三,如果自動配置,那么應通過無狀態機制還是有狀態機制獲得,或者兩者兼而有之。
IPv6地址自動配置方式分為兩種:無狀態地址自動配置和有狀態地址自動配置(如DHCPv6)。
有狀態地址自動配置的方式是指一個結點加入IPv6網絡時,允許IP結點從特殊的BOOTP服務器或DHCP服務器獲取配置信息。這些協議采用狀態自動配置( State Auto Configuration),即服務器必須保持每個結點的狀態信息,記錄著曾經把哪個地址分配給了哪個主機。
無狀態地址自動配置( Stateless Auto Configuration)允許主機根據本地有效信息和路由器公告的信息來創建自己的IPv6地址。無狀態地址自動配置要求本地鏈路支持組播,而且網絡接口能夠發送和接收組播包。
2.5 IPv4向IPv6的過渡
IPv4向IPv6的過渡技術有隧道技術、雙棧技術和地址翻譯技術。
(1)隧道技術
利用隧道技術可以通過現有運行IPv4協議的互聯網骨干網絡(即隧道)將局部的IPv6網絡連接起來。因而,隧道技術是IPv4向IPv6過渡的初期最易于采用的技術。
(2)雙棧技術
雙棧技術是在路由器和交換機的內部讓IPv4和IPv6協議棧同時存在。IPv4和IPv6是功能相近的網絡層協議,兩者都基于相同的下層平臺。
3)地址翻譯技術
NAT-PT( Network Address Translation-Protocol Translation)是附帶協議轉換器的網絡地址轉換器,通過修改協議報文頭來轉換網絡地址,使它們能夠互通。NAT-PT只要求在IPv4與IPv6網絡的轉換設備(網關路由器)上啟用。
=========================================================================================================
三、接入互聯網
3.1 窄帶撥號方式
窄帶撥號主要是利用電話線作為上網載體,靈活方便,但其速率一般為幾十kbit/s到上百kbit/s。窄帶撥號主要包括傳統的PPP撥號和ISDN撥號兩種方式,也有人將它們稱為“模擬撥號”和“數字撥號“。
PPP撥號連接方式是用戶接入互聯網最簡單、最經濟的方式。
如何通過撥號方式上網?
①硬件連接②申請賬號③安裝軟件④設置撥號網絡參數⑤撥號上網登錄⑥下網斷線
3.2 準寬帶方式
準寬帶方式是指上網的單向數據傳輸速率為幾百 kbit/s到幾Mbis的上網方式,主要包括ADSL、 CableModem、PLC等方式。這幾種方式的不同之處是:ADSL利用電話線作為載體,CableModem利用有線電視電纜,而PLC利用電力線。
它們的共同特點是:
第一,利用了用戶家中現有的線路資源,免去了布線施工的麻煩。
第二,由于采用了頻率復用技術,在利用原有線路的同時,ADSL不會影響打電話,CableModem不會影響看電視,而PLC更不會影響用電。
第三,不需要電話撥號的過程,但一般ISP都會要求用戶進行賬號和密碼的認證,以實現計費。
第四,連接簡單。計算機通過網卡或USB接口與外置的各種 Modem相連,再通過各種不同線纜將 Modern與電話插座、有線電視插座或電源插座相連即可。
ADSL是 Asymmetrical Digital Subscriber Loop(非對稱數字用戶環路)的縮寫,ADSL技術是運行在原有普通電話線上的一種新的高速寬帶技術,它利用現有的一對電話銅線,為用戶提供上、下行非對稱的傳輸速率(帶寬)。它最初主要是針對視頻點播業務開發的,隨著技術的發展,逐步成為了一種較方便的寬帶接入技術,為電信部門所重視。
ADSL如何通過準寬帶方式上網?
①硬件連接②軟件安裝③系統設置④連接上網
3.3 寬帶方式
寬帶方式是指上網的單向數據傳輸速率在10Mbit/s以上的方式,主要包括有線局域網和無線局城網兩種方式。有線局域網需要將光纜和雙絞線鋪設到要使用網絡的用戶辦公室或家中,而無線局域網也需要用無線信號覆蓋用戶所要上網的區域。除了傳輸介質不同以外,兩者的上網方式基本相同,都要安裝網絡適配器驅動程序、添加和配置TCP/IP協議等
無線局域網( Wireless Local Area Network,WLAN),是計算機網絡與無線通信技術相結合的產物。與常規局域網中使用的雙絞線或光纖作為傳輸介質不同,WLAN通過電磁波來傳送和接收數據。WLAN目前的主要應用是提供寬帶數據接入(如互聯網接入、企業網接入等)。其便攜性、安裝簡易性、可拓展性和可大范圍三維覆蓋等優點使得WLAN非常適合于不易安裝有線網絡的地方,如咖啡廳、酒店、候機廳、會議中心、展覽館、體育場、公園等。
無線局域網如何通過寬帶方式上網?
①硬件條件②系統設置
3.4 3G無線上網
3G標準:電信的CDMA2000,聯通的WCDMA(寬帶碼分多址)和移動的TD-SCDMA(時分同步碼分多址)。
3G無線上網卡(常見的為USB接口適配器)是目前無線廣域通信網絡應用廣泛的上網介質。常見的無線上網卡包括CDMA2000無線上網卡和TD、 WCDMA無線上網卡3類。
總結
以上是生活随笔為你收集整理的【互联网及其应用】第2章互联网技术的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 深度学习一:从放弃windows开始——
- 下一篇: 银河麒麟高级服务器操作系统V10 SP2