




版權說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權,請進行舉報或認領
文檔簡介
第二十二課網(wǎng)絡編程企業(yè)內(nèi)部軟件工程師培訓講義本課內(nèi)容計算機網(wǎng)絡基礎
TCP/IP協(xié)議IP地址及網(wǎng)絡掩碼使用包中的類實現(xiàn)網(wǎng)絡通信
--URL類及其用法 --Socket通信計算機網(wǎng)絡基礎
什么是計算機網(wǎng)絡把分布在不同地理區(qū)域的計算機與專門的外部設備用通信線路互連成一個規(guī)模大、功能強的網(wǎng)絡系統(tǒng),從而使眾多的計算機可以方便地互相傳遞信息,共享硬件、軟件、數(shù)據(jù)信息等資源。計算機網(wǎng)絡的主要功能資源共享信息傳輸與集中處理
均衡負荷與分布處理
綜合信息服務(www/綜合業(yè)務數(shù)字網(wǎng)絡
ISDN)計算機網(wǎng)絡分類按規(guī)模大小和延伸范圍劃分:局域網(wǎng)(LAN--localareanetwork)城域網(wǎng)(MAN--metropolitanareanetwork)廣域網(wǎng)(WAN–wideareanetwork)按照網(wǎng)絡的拓撲結構劃分:環(huán)形網(wǎng)、星形網(wǎng)、總線型網(wǎng)等
按照通信傳輸?shù)慕橘|(zhì)來劃分:雙絞線網(wǎng)、同軸電纜網(wǎng)、光纖網(wǎng)和衛(wèi)星網(wǎng)等
按照信號頻帶占用方式劃分:基帶網(wǎng)和寬帶網(wǎng)
局域網(wǎng)的幾種工作模式
專用服務器結構(Server-Based)
又稱為“工作站/文件服務器”結構,由若干臺微機工作站與一臺或多臺文件服務器通過通信線路連接起來組成工作站存取服務器文件,共享存儲設備。
客戶機/服務器模式(client/server)
其中一臺或幾臺較大的計算機集中進行共享數(shù)據(jù)庫的管理和存取,稱為服務器,而將其它的應用處理工作分散到網(wǎng)絡中其它微機上去做,構成分布式的處理系統(tǒng)。
對等式網(wǎng)絡:(Peer-to-Peer)
在拓撲結構上與專用Server與C/S相同。在對等式網(wǎng)絡結構中,沒有專用服務器每一個工作站既可以起客戶機作用也可以起服務器作用。
網(wǎng)絡通信協(xié)議及接口
什么是網(wǎng)絡通信協(xié)議計算機網(wǎng)絡中實現(xiàn)通信必須有一些約定即通信協(xié)議,對速率、傳輸代碼、代碼結構、傳輸控制步驟、出錯控制等制定標準。
網(wǎng)絡通信接口
為了使兩個結點之間能進行對話,必須在它們之間建立通信工具(即接口),使彼此之間能進行信息交換。接口包括兩部分:硬件裝置:實現(xiàn)結點之間的信息傳送軟件裝置:規(guī)定雙方進行通信的約定協(xié)議通信協(xié)議分層的思想為什么要分層由于結點之間聯(lián)系很復雜,在制定協(xié)議時,把復雜成份分解成
一些簡單的成份,再將它們復合起來。最常用的復合方式是層次方式,即同層間可以通信、上一層可以調(diào)用下一層,而與再下一層不發(fā)生關系。
通信協(xié)議的分層規(guī)定
把用戶應用程序作為最高層,把物理通信線路作為最低層,將其間的協(xié)議處理分為若干層,規(guī)定每層處理的任務,也規(guī)定每層的接口標準。
第5層第4層第3層第1層第2層主機B主機A第5層第4層第3層第1層第2層第1層協(xié)議第3層協(xié)議第2層協(xié)議第4層協(xié)議第5層協(xié)議物理介質(zhì)通信協(xié)議分層演示參考模型OSI
參考模型表示層應用層會話層網(wǎng)絡層傳輸層數(shù)據(jù)鏈路層物理層應用層網(wǎng)絡層傳輸層物理+數(shù)據(jù)鏈路層TCP/IP
參考模型數(shù)據(jù)的封裝與拆封封裝發(fā)送方數(shù)據(jù)在網(wǎng)絡模型的各層傳送過程中加入頭尾的過程拆封接受方收到數(shù)據(jù)后去除相應的頭尾的過程數(shù)據(jù)封裝PDU傳輸層數(shù)據(jù)鏈路層物理層網(wǎng)絡層上層數(shù)據(jù)上層數(shù)據(jù)傳輸層控制信息數(shù)據(jù)網(wǎng)絡層控制信息數(shù)據(jù)邏輯鏈路子層控制信息0101110101001000010數(shù)據(jù)媒體訪問控制子層控制信息表示層應用層會話層SegmentPacketBitsFrameFCSFCS數(shù)據(jù)拆封上層數(shù)據(jù)邏輯鏈路控制子層控制信息+網(wǎng)絡層控制信息+傳輸層控制信息+上層數(shù)據(jù)媒體訪問控制子層控制信息網(wǎng)絡層控制信息+傳輸層控制信息+上層數(shù)據(jù)邏輯鏈路子層控制信息傳輸層控制信息+上層數(shù)據(jù)網(wǎng)絡層控制信息上層數(shù)據(jù)傳輸層控制信息0101110101001000010傳輸層數(shù)據(jù)鏈路層物理層網(wǎng)絡層表示層應用層會話層網(wǎng)絡數(shù)據(jù)通訊演示TCP/IP協(xié)議TCP--TransmissionControlProtocolIP--InternetProtocolTCP/IP協(xié)議可保證不同廠家生產(chǎn)的計算機能在共同網(wǎng)絡環(huán)境下運行,解決異構網(wǎng)通信問題,TCP/IP與低層的數(shù)據(jù)鏈路層和物理層無關,能廣泛地支持由低兩層協(xié)議構成的物理網(wǎng)絡結構。
TCP--面向連接的可靠數(shù)據(jù)傳輸協(xié)議;TCP重發(fā)一切沒有收到的數(shù)據(jù),進行數(shù)據(jù)內(nèi)容準確性檢查并保證分組的正確順序。IP協(xié)議IP協(xié)議是網(wǎng)際層的主要協(xié)議,支持網(wǎng)間互連的數(shù)據(jù)報通信。它提供主要功能有:無連接數(shù)據(jù)報傳送數(shù)據(jù)報路由選擇和差錯控制IP協(xié)議主要特性:
IP協(xié)議將報文傳送到目的主機后,無論傳送正確與否都不進行檢驗、不回送確認、不保證分組的正確順序。IP地址TCP/IP用IP地址來標識源地址和目的地址IP地址功能:為實現(xiàn)網(wǎng)絡中不同計算機之間的通信,每臺機器都必須有一個與眾不同的標識---IP地址;IP地址格式:數(shù)字型,32位,由4個8位的二進制數(shù)組成,每8位之間用圓點隔開,如:8;IP地址組成:網(wǎng)絡標識(netId)+主機標識(hostId);IP地址分類:分為A、B、C三類,每個類別的網(wǎng)絡標識和主機標識各有規(guī)則。A~C類IP地址格式1Bits:0NetworkHostHostHost891617242532Range(1-126)110NetworkNetworkHostHost891617242532Range(128-191)1110NetworkNetworkNetworkHost891617242532Range(192-223)A類:B類:Bits:C類:Bits:網(wǎng)絡掩碼(mask)網(wǎng)絡掩碼的作用根據(jù)網(wǎng)絡掩碼+IP地址可確定該主機的網(wǎng)絡地址網(wǎng)絡掩碼的組成對每個網(wǎng)絡的網(wǎng)絡地址設定一個按位對應的32bit的二進制數(shù):網(wǎng)絡地址部分的對應位設置位1,主機地址部分的對應位設置位0。A類網(wǎng)絡掩碼:B類網(wǎng)絡掩碼:C類網(wǎng)絡掩碼:URLURL(UniformResourceLocator)----統(tǒng)一資源定位器,表示Internet上某一資源的地址。URL組成:協(xié)議名和資源名
protocol:resourceNameURL舉例://home/welcome.html/developers/.URL類常用構造方法publicURL(Stringspec);
URLu1=newURL(“/home/”);publicURL(URLcontext,Stringspec);
URLu2=newURL(u1,“welcome.html”);publicURL(Stringprotocol,Stringhost,Stringfile);
URLu3=newURL(“http”,“”,“developers/index.html”);publicURL(Stringprotocol,Stringhost,intport,Stringfile);
URLu4=newURL(“http”,“”,80,“developers/index.html”);URL類應用舉例(1)importjava.io.*;import.*;publicclassURLReader{ publicstaticvoidmain(Stringargs[]){ try{ URLtirc=newURL("/"); BufferedReaderin=newBufferedReader(new InputStreamReader(tirc.openStream())); Strings; while((s=in.readLine())!=null) System.out.println(s); in.close(); }catch(MalformedURLExceptione){ System.out.println(e); }catch(IOExceptione){ System.out.println(e); } }}URL類應用舉例(2)程序URLReader.java輸出結果:<html><head><title>清華大學網(wǎng)站首頁</title><metahttp-equiv="Content-Type"content="text/html;charset=gb2312"><metahttp-equiv="refresh"content="0;URL=./eng/index.htm"></head><bodybgcolor="#FEFAF2"text="#000000"topmargin=0leftmargin=0marginwidth=0marginheight=0></body></html>//如使用了代理服務器,則使用下述命令運行://java-DxyHost=<hostname|hostIP>-DxyPort=<port>URLReaderSocket兩個Java應用程序可通過一個雙向的網(wǎng)絡通信連接實現(xiàn)數(shù)據(jù)交換,這個雙向鏈路的一端稱為一個socket。socket通常用來實現(xiàn)client-server連接。包中定義的兩個類Socket和ServerSocket,分別用來實現(xiàn)雙向連接的client和server端建立連接時所需的尋址信息遠程計算機的機器名或IP地址試圖連接的端口號(Portnumber)Socket通信模型ServerServerSockets(port#)s.accept()/等待連接Socket()OutputStreamInputStreamsocket.close()ClientSocket(host,port#)(Attempttoconnect)OutputStreamInputStreamsocket.close()網(wǎng)絡編程的四個基本步驟創(chuàng)建socket;打開連接到socket的輸入/輸出流;按照一定的協(xié)議對socket進行讀/寫操作;關閉socket;創(chuàng)建socketSocket/ServerSocket類的構造方法Socket(InetAddressaddress,intport);Socket(InetAddressaddress,intport,booleanstream);Socket(Stringhost,intport);Socket(Stringhost,intport,booleanstream);ServerSocket(intport);ServerSocket(intport,intcount);客戶端Socket的建立try{Socketsocket=newSocket(”",2000);}catch(IOExceptione){System.out.println("Error:"+e);}服務器端Socket的建立ServerSocketserver=null;try{server=newServerSocket(2000);}catch(IOExceptione){System.out.println("cannotlistento:"+e);}Socketsocket=null;try{socket=server.accept();}catch(IOExceptione){System.out.println("Error:"+e);}打開輸入/出流
PrintStreamos=newPrintStream(new BufferedOutputStream(socket.getOutputStream())); DataInputStreamis=newDataInputStream(socket.getInputStream());關閉Socket os.close(); is.close(); socket.close();簡單的client/server程序import.*;importjava.io.*;publicclassTestServer{ publicstaticvoidmain(Stringargs[]){ try{ ServerSockets=newServerSocket(8888); while(true){ Sockets1=s.accept(); OutputStreamos=s1.getOutputStream(); DataOutputStreamdos=newDataOutputStream(os); dos.writeUTF("Hello,"+s1.getInetAddress()+
"port#"+s1.getPort()+"bye-bye!");
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經(jīng)權益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
- 6. 下載文件中如有侵權或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 健康管理公司合同范例
- 雙經(jīng)銷合同范本
- 單位裝修工程合同范本
- 銷售藥膏合同范本
- 2025年太陽能發(fā)電機組項目合作計劃書
- 各類合同范本超全
- 合同范本紙制
- 商鋪的出租合同范本
- 承接糧庫工程合同范本
- 廠房設備合同范例
- 電鍍園區(qū)現(xiàn)場管理
- 七年級歷史下冊 第一單元 綜合測試卷(人教福建版 2025年春)
- 電腦終端安全培訓
- 成人重癥患者顱內(nèi)壓增高防控護理專家共識2024
- 物品消毒知識培訓課件
- 《孤獨的小螃蟹》導讀課件
- 第3課《列夫·托爾斯泰》課件-2024-2025學年統(tǒng)編版語文七年級下冊
- 少兒足球基礎知識
- TSDLPA 0001-2024 研究型病房建設和配置標準
- 陜09J01 建筑用料及做法圖集
- PI形式發(fā)票范文模板
評論
0/150
提交評論