freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

計(jì)算機(jī)網(wǎng)絡(luò)實(shí)驗(yàn)報(bào)告共5篇-展示頁(yè)

2024-11-16 00:23本頁(yè)面
  

【正文】 很強(qiáng)大,看起來(lái)很復(fù)雜,其實(shí)底層最基本的實(shí)現(xiàn)原理都是一樣的。(nick +“:”+ ())。new ReceiveThread().start()。br = new BufferedReader(new InputStreamReader(()))。}catch(Exception ex){}Socket s = new Socket(“”,1201)。} class ReceiveThread extends Thread{public void run(){while(true){} try{String msg = ()。try{ nick = (“請(qǐng)輸入你的名稱”)。(true)。()。()。Font(”宋體(jtf,)。(new “,30))。private BufferedReader br = null。private String nick。class Client extends JFrame implements ActionListener{ private JTextArea jta = new JTextArea()。import 。import .*。//用于發(fā)送數(shù)據(jù)} } public static void main(String[] args)throws Exception{new Server()。(msg)。//死等函數(shù) //傳給所有的客戶端for(int i=0。public ReceiveThread(Socket s)throws Exception{br = new BufferedReader(new InputStreamReader(()))。}catch(Exception ex){} class ReceiveThread extends Thread{private BufferedReader br = null。}} (rt)。new Thread(this).start()。(true)。()。public Server(){} public void run(){while(true){try{ Socket s = ()。class Server extends JFrame implements Runnable{private ArrayList persons = new ArrayList()。import .*。四、實(shí)驗(yàn)結(jié)果服務(wù)器端登陸客戶端客戶端之間的交互五、源代碼//服務(wù)器端import .*。getOutputStream():得到套接字的輸出數(shù)據(jù)流。通信傳輸1)服務(wù)器上的軟件應(yīng)該運(yùn)行開(kāi)辟一個(gè)端口,等待客戶連接 2)客戶通過(guò)服務(wù)器的IP和開(kāi)的端口連上服務(wù)器(既能連接又能通信)將本機(jī)當(dāng)成服務(wù)器,在本機(jī)上另外編一個(gè)程序當(dāng)成客戶端,服務(wù)器界面運(yùn)行,等待客戶連接; 客戶界面上一個(gè)按鈕,點(diǎn)擊,連接服務(wù)器,當(dāng)連上之后,客戶標(biāo)題變?yōu)椤癘K”,服務(wù)器標(biāo)題變?yōu)椤坝腥诉B上”。用多線程監(jiān)聽(tīng)的方式來(lái)完成服務(wù)器和客戶端的交互,主要用到ServerSocket()函數(shù)。用端口(port)來(lái)對(duì)應(yīng)著應(yīng)用程序。A 發(fā)信息 給B = A服務(wù)器B。:具有點(diǎn)對(duì)點(diǎn)通信功能,任意客戶端之間能夠發(fā)送消息; 具有群組通信功能,客戶端能夠向組內(nèi)成員同時(shí)發(fā)送消息,其他組成員不能收到;具有廣播功能,客戶端能夠向所有其他成員廣播消息;二、實(shí)驗(yàn)?zāi)康募耙髮?shí)驗(yàn)?zāi)康模?、VC++、VS或JAVA等集成開(kāi)發(fā)環(huán)境編寫網(wǎng)絡(luò)程序方法; (C/S)應(yīng)用的工作方式; ; 、組播和廣播的原理并比較其不同之處; ; 編程語(yǔ)言及環(huán)境:++/C/Java等均可; (MS Visual系列,VC/VB/;)和Linux(編輯器vi+編譯器GCC)均可;三、實(shí)驗(yàn)原理建立客戶端/服務(wù)器連接模式所有的客戶端必須連接到服務(wù)器。實(shí)驗(yàn)二、Socket通信實(shí)驗(yàn)一、實(shí)驗(yàn)內(nèi)容,Socket編程是網(wǎng)絡(luò)編程的主流工具,Socket API是實(shí)現(xiàn)進(jìn)程間通信的一種編程設(shè)施,也是一種為進(jìn)程間提供底層抽象的機(jī)制,提供了訪問(wèn)下層通信協(xié)議的大量系統(tǒng)調(diào)用和相應(yīng)的數(shù)據(jù)結(jié)構(gòu)。我選擇的是距離矢量路由算法,該算法的基本思想如下:每個(gè)路由器維護(hù)一個(gè)距離矢量(通常是以延時(shí)是作變量的)表,然后通過(guò)相鄰路由器之間的距離矢量通告進(jìn)行距離矢量表的更新。七、實(shí)驗(yàn)心得經(jīng)過(guò)此次試驗(yàn),對(duì)兩種不的路由協(xié)議有了深入的理解。路由表的初始信息存儲(chǔ)在文件中,程序運(yùn)行是先調(diào)用函數(shù)從文件中讀取路由表的初始信息,然后輸出初始路由表的信息,print()函數(shù)主要是向鄰近節(jié)點(diǎn)發(fā)送自己的路由表信息,exchange()函數(shù)則根據(jù)新路由表信息更新自己的路由表。}getchar()。exchange(i)。c=(char)(i+65)。i N。init()。print(k)。m N。elsepath[m] = path[i]。 dist[k1][m] dist[k1][i] + map[i][m]){if(dist[k1][i] + map[i][m] dist[k][m]){dist[k][m] = dist[k1][i] + map[i][m]。i++)//修改更新路由表if(map[i][m] MAX amp。m++)if(m!= v)for(i = 0。for(m = 0。m N。k N。}print(1)。 dist[1][i] MAX)path[i] = i。if(i!= v amp。i N。}void exchange(int v){int i, k, m。i++)printf(“%5d(%c)”, dist[k][i],(char)(path[i]+65))。for(i = 0。}void print(int k)//打印函數(shù){int i, j。printf(“n”)。j N。i N。} printf(“t隨機(jī)拓?fù)浣Y(jié)構(gòu)為:n”)。j++){map[i][j] = rand()% MAX_size。i++)for(j = i+1。//隨機(jī)生成的函數(shù)for(i = 0。void init()//以鄰接矩陣的形式存儲(chǔ),隨機(jī)產(chǎn)生各路由表的拓?fù)浣Y(jié)構(gòu){ int i, j。int dist[N][N]。:實(shí)驗(yàn)中將兩路由器間的延遲的代價(jià)用邊的權(quán)值進(jìn)行存儲(chǔ),將路由器用結(jié)點(diǎn)表示,則結(jié)點(diǎn)間每次和所有鄰居交換信息,更新每個(gè)結(jié)點(diǎn)到其他結(jié)點(diǎn)的最短路徑,并記錄到達(dá)其他結(jié)點(diǎn)所經(jīng)歷的鄰居結(jié)點(diǎn)作為出路。編程語(yǔ)言和環(huán)境:編程語(yǔ)言C/C++/C/Java等均可;編程環(huán)境Windows(MS Visual系列,VC/VB/;)和Linux(編輯器vi+編譯器GCC)均可;三、實(shí)驗(yàn)原理:每個(gè)路由器維護(hù)一張路由表(即一個(gè)矢量),它以網(wǎng)絡(luò)中的每個(gè)路由器為索引,表中列出了當(dāng)前已知的路由器到每個(gè)目標(biāo)路由器的最佳距離,以及所使用的線路?;疽? 動(dòng)態(tài)生成網(wǎng)絡(luò)拓?fù)鋱D,節(jié)點(diǎn)間的距離隨機(jī)生成。第一篇:計(jì)算機(jī)網(wǎng)絡(luò)實(shí)驗(yàn)報(bào)告計(jì)算機(jī)網(wǎng)絡(luò)實(shí)驗(yàn)報(bào)告實(shí)驗(yàn)內(nèi)容:實(shí)驗(yàn)時(shí)間:指導(dǎo)老師:王偉平老師姓名:代班級(jí):信安學(xué)號(hào):網(wǎng)絡(luò)路由層協(xié)議模擬實(shí)驗(yàn)Socket通信實(shí)驗(yàn)2014年5月9日巍1201班 0909121615實(shí)驗(yàn)一、距離向量路由算法的實(shí)現(xiàn)一、實(shí)驗(yàn)內(nèi)容網(wǎng)絡(luò)路由算法是路由器工作的核心,針對(duì)因特網(wǎng)常用的距離向量路由算法和鏈路狀態(tài)路由算法進(jìn)行模擬實(shí)現(xiàn),進(jìn)一步掌握其工作原理及其相關(guān)性能。二、實(shí)驗(yàn)?zāi)康募耙髮?shí)驗(yàn)?zāi)康模?、VC++、VS或JAVA等集成開(kāi)發(fā)環(huán)境編寫路由仿真程序的方法;。每個(gè)節(jié)點(diǎn)生成自己的鏈路狀態(tài)分組,依據(jù)收到的鏈路狀態(tài)表得到整體網(wǎng)絡(luò)結(jié)構(gòu),在得到的整體網(wǎng)絡(luò)結(jié)構(gòu)上用最短路徑算法,生成每個(gè)節(jié)點(diǎn)的路由表。通過(guò)在鄰居之間相互交換信息,路由器不斷地更新他們的內(nèi)部路由表。四、實(shí)驗(yàn)結(jié)果五、源代碼include include includedefine N 5//5個(gè)路由器define MAX_size 20define MAX 1000int map[N][N]。int path[N]。srand((unsigned)time(NULL))。i N。j N。map[j][i] = map[i][j]。for(i = 0。i++){for(j=0。j++)printf(“t%d ”, map[i][j])。}printf(“n”)。printf(“t%d次交換: ”,k)。i N。//顯示到其他結(jié)點(diǎn)的距離并且輸出鄰居結(jié)點(diǎn)printf(“n”)。for(i = 0。i++)//顯示第一次交換結(jié)果{dist[1][i] = map[v][i]。amp。elsepath[i] =20。for(k = 2。k++){for(m = 0。m++)dist[k][m] = dist[k1][m]。m N。i N。amp。if(map[v][i] MAX)path[m] = i。}}for(m = 0。m++)if(path[m] == v)path[m] = m。} } int main(){int i。for(i = 0。i++){char c。printf(“t%c路由器的路由表n”,c)。printf(“n”)。}六、實(shí)驗(yàn)總結(jié)程序先定義了一個(gè)路由表,路由表結(jié)點(diǎn)的權(quán)值和弧數(shù)可隨機(jī)生成。當(dāng)所有的路由表節(jié)點(diǎn)都更新一遍后,整個(gè)路由表更新完畢。距離矢量路由算法及鏈路狀態(tài)路由算法兩者的區(qū)別在于,距離矢量路由算法是靜態(tài)的,鏈路狀態(tài)路由算法是動(dòng)態(tài)的。每一次都要相應(yīng)地更改路由器的路由表,從而找到到達(dá)周邊節(jié)點(diǎn)的最短路徑。本實(shí)驗(yàn)利用Socket API編寫網(wǎng)絡(luò)通信程序,具體實(shí)驗(yàn)要求及內(nèi)容如下??蛻舳说耐ㄐ庞煞?wù)器轉(zhuǎn)發(fā)。用IP地址定位網(wǎng)上的計(jì)算機(jī),一共4段,每段0255之間,編寫程序,通過(guò)Java來(lái)獲取本機(jī)IP地址(本機(jī)IP地址也可以用:,本機(jī)名稱可以用:localhost來(lái)表示)。確定了IP地址,還要確定對(duì)方的程序是在哪個(gè)端口,我們才能與之通信,端口就是一個(gè)數(shù)字,065535之間。用輸入輸出流BufferedReader()PrintStream()來(lái)發(fā)送消息。數(shù)據(jù)流socket是通信的紐帶,socket里面有一個(gè)輸入流InputStream一個(gè)輸出流OutputStream,如果向輸出流里面輸出內(nèi)容,另一方就會(huì)得到,并通過(guò)輸入流讀取getInputStream():得到套接字的輸入數(shù)據(jù)流。工作完畢,使用流對(duì)象的close()方法關(guān)閉用于網(wǎng)絡(luò)通信的輸入、輸出流,用Socket對(duì)象的close()方法關(guān)閉socket。import .*。import .*。private ServerSocket ss = null。(200,200)。(“服務(wù)器”)。try{ ss = new ServerSocket(1201)。//啟動(dòng)等待連接的線程}catch(Exception ex){} ReceiveThread rt = new ReceiveThread(s)。()。private PrintStream ps = null。//發(fā)送數(shù)據(jù)構(gòu)造函數(shù)} public void run(){while(true){//接受信息} try{String msg = ()。i} }catch(Exception ex){} ReceiveThread rt =(ReceiveThread)(i)。ps = new PrintStream(())。} }//客戶端import .*。import .*。import .*。private JTextField jtf = new JTextField()。private PrintStream ps = null。public Client(){ (jta,)。()。(new Font(“宋體”,30))。(400,300)。(“客戶端”)。(this)。(nick)。(msg + “n”)。ps = new PrintStream(())。(nick+“成功上線!”)。}catch(Exception ex){}} } } public void actionPerformed(ActionEvent e){ } public static void main(String[] args)throws Exception{ } new Client()。六、實(shí)驗(yàn)總結(jié)Socket通信是網(wǎng)絡(luò)通信中的重要環(huán)節(jié),本實(shí)驗(yàn)中主要實(shí)現(xiàn)了TCP/IP的通信,傳遞相應(yīng)的信息來(lái)完成各種不同的交互功能?;赥CP/IP協(xié)議的連接是比較可靠的,它先通過(guò)“三次握手”建立彼此間的一條通路,之后,兩者就可以通過(guò)這條通路有效地傳遞信息了。聊天的實(shí)現(xiàn):客戶端向服務(wù)器發(fā)送一個(gè)消息包,里面包含了消息類型、接收人和發(fā)送人等信息,服務(wù)器接到的時(shí)候先判斷,如果是聊天消息,就取出其中的接收人信息,并在自己的線程池里面查找相應(yīng)的線程,找到時(shí)把消息(包含發(fā)送人和消息內(nèi)容等)通過(guò)這個(gè)線程發(fā)送出去。對(duì)方如果要回復(fù)的話,也可以把發(fā)送人和接收人及聊天消息等信息包裝起來(lái)發(fā)送給服務(wù)器,服務(wù)器再用之前一樣的方法來(lái)處理這個(gè)信息,這樣的話,雙方就可以通過(guò)服務(wù)器實(shí)現(xiàn)單聊了。實(shí)驗(yàn)過(guò)程中遇到了很多的問(wèn)題。Java提供Socket類使得TCP連接的通信十分方便,在實(shí)現(xiàn)通信過(guò)程的時(shí)候,最主要的是理解Java中的各種輸入輸出流類型起到的作用。其中,PC1到ISP1段的鏈路使用PPPoE,ISP1已經(jīng)配置為PPPoE服務(wù)器。實(shí)驗(yàn)?zāi)康膌了解PPP協(xié)議的封裝格式。實(shí)驗(yàn)步驟任務(wù):觀察PPP協(xié)議和PPPoE協(xié)議的數(shù)據(jù)封裝格式l步驟1:準(zhǔn)備工作單擊主窗口右下角 Realtime 和 Simulation 模式切換按鈕數(shù)次,直至交換
點(diǎn)擊復(fù)制文檔內(nèi)容
范文總結(jié)相關(guān)推薦
文庫(kù)吧 www.dybbs8.com
備案圖鄂ICP備17016276號(hào)-1