Java Network Programming 筆記(1)
來源:互聯網
上載者:User
Java Network Programming 筆記
n5
一 網路基本概念
Chapter2 Basic Network Concepts
2.1 Networks
keywords: network, node, host, address, name, packet-switched, protocol
網路是可以或多或少即時地相互發送和接收資料的電腦和其他裝置的集合。
網路上的每台機器被稱作結點(node),大多數結點是電腦,但是印表機,路由器,橋,網關,啞終端和可口可樂機都可以是結點,但你通常只和其他電腦會話。
功能齊全的電腦結點被稱作主機(host)。
每個網路結點有一個地址(address):唯一標識它的一系列位元組。在不同的網路中地址分配方法同。乙太網路地址是附加在物理的乙太網路硬體上的。裝置廠商要保證這些硬體的地址不重複。一台電腦的Internet地址通常由專門負責分配地址的組織分配。而這些組織可以分配的地址又是由該組織的ISP(Internet Service Provider)提供的。ISP從三個Internet地區性登錄授權單位之一獲得IP地址(Internet Protocol地址)。比如美洲和非洲的登錄授權單位為ARIN(the American Registry for Internet Numbers)。地區性登錄授權單位的地址又是由IANA(Internet Assigned Numbers Authority)分配的。
某些種類的網路中,結點可使用人類易辨認的名字。名字和地址的對應不是不變的。名字變了,地址可不變;地址變了,名字可不變。一個地址通常可有多個名字,一個名字也可以對應多個地址(雖然這樣的情況很少)
所有現代電腦網路是包交換(packet-switched)網路。在網路上傳輸的資料被分成包,每個包都被獨立處理。每個包都含有"誰發送了我"和"我要去哪兒"的資訊。包交換的最大優點是可以同時進行很多交換,若干電腦可以共用一條電纜。
協議(protocol)是一組精確的規則集合,它定義了電腦之間如何通訊,包括:地址格式,資料如何分包等。公開發布的協議允許不同廠商的軟體和裝置相互連訊。比如web瀏覽器不用關心伺服器是Unix工作站還是Windows box或者Mac機,因為伺服器和瀏覽器都使用同樣的平台無關的http協議交談。
2.2 The Layers of a Network
標準TCP/IP四層模型:
Application Layer
Transport Layer (TCP,UDP)
InternetLayer (IP)
The Host-To-Network Layer (Ethernet,LocalTalk,FDDI...)
90%的Java網路編程處於應用程式層,只須同傳輸層對話。剩下的10%處於傳輸層,同應用程式層和網間網層對話。
應用程式層看起來是直接同其他host的應用程式層對話的,網路在兩個應用程式層之間建立了一條邏輯鏈路。