文章來源http://hi.baidu.com/%BC%C6%CB%E3%BB%FA%D1%A7%CF%B0%CD%F8/blog/item/4e8727183e78ba0435fa419e.html
從最基本的概念層層入手,才能全面瞭解網絡的本質性。 1.計算機網絡 將地理位置不同、並具有獨立功能的多個計算機系統通過通信設備和線路連接起來,以功能完善的網絡軟件實現網絡中資源共享的系統,稱爲計算機網絡。計算機網絡是通信技術與計算機技術相結合的產物。 2.因特網(Internet) 因特網又稱國際互聯網,是一個由各種不同類型和規模的獨立運行和管理的計算機網絡組成的世界範圍的計算機網絡。是一個全球的、開放的信息資源網。因特網只是一個極爲龐大而又複雜的計算機網絡。
網絡協議即網絡中(包括互聯網)傳遞、管理信息的一些規範。如同人與人之間相互交流是需要遵循一定的規矩一樣,計算機之間的相互通信需要共同遵守一定的規則,這些規則就稱爲網絡協議。是計算機通過網絡彼此交流的一種“語言”。不同計算機之間必須使用相同的網絡協議才能進行通信。網絡上的計算機要互相通信,必須遵循一定的協議。常見的網絡協議有TCP/IP,IPX/SPX和NETBEUI。目前使用最廣泛的網絡協議是Internet的TCP/IP協議。
IP是Internet Protocol的縮寫,即互聯網協議。爲了能在網絡上準確地找到一臺計算機,TCP/IP協議爲每個連到Internet上的計算機分配了一個惟一的用32位二進制數字表示的地址的字,就是我們常說的IP地址。Internet上的每臺主機(Host)都有一個唯一的IP地址,這是Internet能夠運行的基礎。 5.域名(DN) 域名的英文爲Domain Name,便於記憶的IP地址別號,也相當於一個企業或機構在互聯網上主機的一個代號。域名的形式是以若干個英文字母和數字組成,由“.”分隔成幾份。如:www.sohu.com.cn 6.URL(統一資源定位器) URL是Uniform Resource Locator的縮寫,即統一資源定位系統,也就是我們通常所說的網址。URL是在Internet的WWW服務程序上用於指定信息位置的表示方法,它指定了如HTTP或FTP等Internet協議,是惟一能夠識別Internet上具體的計算機、目錄或文件位置的命名約定。 7.網絡編程 網絡編程的目的就是指直接或間接地通過網絡協議與其他計算機進行通訊。網絡編程中有兩個主要的問題,一個是如何準確的定位網絡上一臺或多臺主機,另一個就是找到主機後如何可靠高效的進行數據傳輸。在TCP/IP協議中IP層主要負責網絡主機的定位,數據傳輸的路由,由IP地址可以唯一地確定Internet上的一臺主機。而TCP層則提供面向應用的可靠的或非可靠的數據傳輸機制,這是網絡編程的主要對象,一般不需要關心IP層是如何處理數據的。 目前較爲流行的網絡編程模型是客戶機/服務器(C/S)結構。即通信雙方一方作爲服務器等待客戶提出請求並予以響應。客戶則在需要服務時向服務器提出申請。服務器一般作爲守護進程始終運行,監聽網絡端口,一旦有客戶請求,就會啓動一個服務進程來響應該客戶,同時自己繼續監聽服務端口,使後來的客戶也能及時得到服務。 在Internet上IP地址和主機名是一一對應的,通過域名解析可以由主機名得到機器的IP,由於機器名更接近自然語言,容易記憶,所以使用比IP地址廣泛,但是對機器而言只有IP地址纔是有效的標識符。 通常一臺主機上總是有很多個進程需要網絡資源進行網絡通訊。網絡通訊的對象準確的講不是主機,而應該是主機中運行的進程。這時候光有主機名或IP地址來標識這麼多個進程顯然是不夠的。端口號就是爲了在一臺主機上提供更多的網絡資源而採取得一種手段,也是TCP層提供的一種機制。只有通過主機名或IP地址和端口號的組合才能唯一的確定網絡通訊中的對象:進程。
所謂socket通常也稱作"套接字",用於描述IP地址和端口,是一個通信鏈的句柄。應用程序通常通過"套接字"向網絡發出請求或者應答網絡請求。 套接字可以根據通信性質分類,這種性質對於用戶是可見的。應用程序一般僅在同一類的套接字間進行通信。不過只要底層的通信協議允許,不同類型的套接字間也照樣可以通信。套接字有兩種不同的類型:流套接字和數據報套接字。 9.套接字工作原理 要通過互聯網進行通信,你至少需要一對套接字,其中一個運行於客戶機端,我們稱之爲ClientSocket,另一個運行於服務器端,我們稱之爲ServerSocket。 所謂服務器監聽,是服務器端套接字並不定位具體的客戶端套接字,而是處於等待連接的狀態,實時監控網絡狀態。
網絡編程概念全面接觸(二) 網絡編程通常被稱爲Socket編程,在《網絡編程概念全面接觸一》一文中已經做了比較詳細的解釋。這裏就涉及的相關傳輸技術做實際的分析。 一、Socket的兩種類型 套接字的兩種類型:一種採用"Stream Sockets"(流格式),另一種爲"Datagram Sockets"(數據報格式)。 二、TCP與UDP TCP 傳輸控制協議 Transfer Control Protocal TCP與UDP的區別: 比如聊天室用TCP協議來傳送文字、控制信息、畫板和屏幕廣播數據,用UDP協議來傳送語音和視頻流。 三、數據包在網絡上的傳輸
TCP/IP四層模型 模型的核心思想就是層層封裝,工 |