一、internet與tcp/ip協議
internet的發展大致可為四個階段:60年代,internet起源;
70年代,tcp/ip協議,internet隨之發展起來;80
年代,nfsnet出現,並成為當今internet的基礎;90年代,internet進入高速發展時間,並開始向全世普及。
2023年美國**艾林豪威爾向美國國會提出建立darpa
(defense advanced research project agency),即國防部高階研究計畫署,簡稱為arpa
。2023年6
月darpa提出
「資源共享計算機網路中」。
早期的arpanet使用網路控制協議(network control protocol,
ncp),不能互聯不同型別的計算機和不同型別的作業系統,沒有糾錯功能。
2023年由kahn和
vintoncerf
兩人合作為arpanet開發了新的一套互聯協議,此協議在2023年
12月兩人正式發表第乙份tcp
協議詳細說明,但此協議有信包失時不能得到有效的糾正。
tcp協議分成兩個不同的協議:
l 用來檢測網路傳輸中差錯的傳輸控制協議tcp
l 專門負責對不同網路進行互聯的網際網路協議ip
從此tcp/ip協議誕生。
2023年
arpanet上停止使用cnp,網際網路上的主機全部使用tcp/ip協議,tcp/ip協議成為internet中的「
世界語」。
二、osi
模型與tcp/ip協議體系結構
網路採用分而治之的方法設計,將網路的功能劃分為不同的醋,以分層的形式有機組合在一起,每層實現不同的功能,其內部實現方法對外部其他層次來說透明,每層向上層提供服務,也可以使用下層提供的服務。網路體系結構即指骨網路的層次結構和每層所使用協議的集合。兩類非常重要的體系結構是:osi與tcp/ip。
osi(開放系統互聯 open system interconnection)
國際標準化組織(iso)制定osi
模型,該模型定義了不同計算機互聯的標準,是設計和描述計算機通訊的基本框架。osi
模型把網路通訊的
工作分為七層:物理層,資料鏈路層,網路層,傳輸層,會話層,表示
和應用層。
設計目的:
osi模型的設計目的是成為乙個所能銷售商都能實現的開放網路模型,來克服使用眾多私有網路模型所帶來的困難和低效性。osi是在乙個備受尊敬的國際標準團體參與下完成的, 這個組織就是iso
(國際標準化組織)。
分層原則:
網路中各結點都有相同的層次
不同結點相同層次具有相同的功能
同一結點相鄰層間通過介面通訊
每一層可以使用下層提供的服務,並向上層提供服務
不同結點的同等層間通過協議來實現對等層間的通訊
osi/rm分層
對等層實體間通訊時資訊的流動過程
對等層通訊的實體
對等層實體之間虛擬通訊,下層向上層提供服務;實際通訊在最低層完成,傳送方資料由最高層逐漸向下層傳遞;到接收方資料由最低層逐漸向高層轉遞。
協議資料單元pdu:osi參考模型中,對等層協議之間交換的資訊單元統稱為協議資料單元(pdu protocol data unit)。
而傳輸層及以下各層的pdu
另外還有各自特定的名稱: 傳輸
層-------資料
段(segment)
網路層------分組
(資料報)(
packet)
資料鏈路層
------資料
幀(frame)
物理層------位元
(bit)
1、物理層(physicallayer)
物理層是osi分層結構體系中最重要、最基礎的一層,它建立在傳輸媒介基礎上,實現裝置之間的物理介面。只接收和傳送一串位元流,不考慮資訊的意義和資訊結構。物理層的資料單位是位(位元流)。
屬於物理層定義的典型 規範代表包括:eia/tiars-232,rj-45等。
物理層的主要功能:為資料端裝置提供傳送資料的通路,資料通路可以是一物理**,也可以是多個物理**連線而成。
物理層的主要裝置:中繼器、集線器。
中斷器的應用:資料傳輸、資料轉換及延長網路,作用:放大訊號、補償訊號衰減。
集線器(hub):區域網中的基礎裝置,功能:訊號放大。
2、資料鏈路層(datalinklayer)
在物理層提供位元流服務的基礎上,建立相鄰結點之間的資料鏈路,通過差錯控制提供資料幀(frame)在資訊上無差錯的傳輸,同時為其上面的網路層提供有效的服務。
資料鏈路層協議的代表包括:sdlc,hdlc,ppp,stp,幀中繼等。
主要功能:實現系統實體間二進位制資訊塊的正確傳輸。為網路層提供可靠無錯誤的資料資訊。
資料鏈路層主要裝置:二層交換機、網橋
3、網路層(network layer)
網路層也稱為通訊子網層,是高層協議之間的介面層,用於控制通訊子網的操作,是通訊子網與資源子網的介面。
在網路層交換的資料的單位是:資料報(packet)。
網路層協議的代表包括:ip,ipx,ospf等。
網路層主要功能:路由選擇和中繼。
網路層主要裝置:路由器。
路由器原理:路由器分本地路由器和遠端路由器,本地路由器是用來連線網路傳輸介質的:光纖、雙絞線及同軸電纜;遠端路由器是用來連線遠端傳輸介質,並要求相應的裝置,如**線要配調製解器,無線要通過無線接收機、發射機。路由器作用:連通不同的網路,資訊傳輸。
4、傳輸層(transport layer)
傳輸層建立 在網路層和會話層之間。實質上它是網路體系結構中高低層銜接的乙個介面層。
傳輸層的資料單元稱為:資料段(segment)這個層負責獲取全部資訊,因此,它必須跟蹤資料單元碎片、亂序到達的資料報和其它在傳輸過程中可能發生的危險。
傳輸層協議的代表包括:tcp
,udp
,spx
等等。
5、會話層(session layer)
此層可稱為會晤層或對話層,在會話層及以上的高層次中,資料傳送的單位不再另外命名,統稱為報文。
主要功能:會話層連線到傳輸層的對映會話連線的流量控制,資料傳輸,會話連線恢復與釋放,會話連線管理 及差錯控制。
6、表示層(presentation layer)
表示層對向上對應用層服務,向下接來自會話層的服務。表示層為應用提供服務包括語法選擇、語法轉換等。
網路應用層是通訊使用者之間的視窗,為使用者提供網路管理,檔案傳輸、事務處理等服務。
應用層為作業系統或網路應用程式提供訪問網路服務的介面。
應用層協議的代表包括:telnet,ftp,http,snmp,dns等。
C 網路通訊程式設計
1 wcf wcf是rpc的一套框架和機制 系列文章 我的wcf之旅 1 系列文章列表 2 其中的入門 建立乙個簡單的wcf程式 2 http通訊 1 http協議簡介 這裡有比較詳細的入門級介紹 這個除了基本的類外,還有網路抓取的框架,是收費的。此外,他還有關於這些原理還程式設計的諸多介紹文章,都...
WinSock網路通訊程式設計入門
對於許多初學者來說,網路通訊程式的開發,普遍的乙個現象就是覺得難以入手。許多概念,諸如 同步 sync 非同步 async 阻塞 block 非阻塞 unblock 等,初學者往往迷惑不清,只知其所以而不知起所以然。同步方式指的是傳送方不等接收方響應,便接著發下個資料報的通訊方式 而非同步指傳送方發...
網路通訊程式設計URLConnection的基礎知識
urlconnection核心 如下 public downutil string path,string targetfile,int threadnum private class downthread extends thread 上面程式中定義了downthread執行緒類,該線各負責讀取從...