




版權(quán)說(shuō)明:本文檔由用戶(hù)提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、精選優(yōu)質(zhì)文檔-傾情為你奉上Project1-ns3模擬數(shù)據(jù)中心實(shí)驗(yàn)要求根據(jù)上面的數(shù)據(jù)中心拓?fù)鋱D,完成以下要求:1. 根據(jù)給定的數(shù)據(jù)中心的拓?fù)浣Y(jié)構(gòu),利用ns3進(jìn)行仿真2. 模擬兩種通信模式(traffic pattern)o all-to-all:每個(gè)服務(wù)器都發(fā)送消息給其他服務(wù)器消息,由拓?fù)浣Y(jié)構(gòu)可知,超過(guò)50%的消息傳送將跨越兩個(gè)簇(cluster)o many-to-one:每個(gè)服務(wù)器都發(fā)送消息給其中一個(gè)服務(wù)器3. 測(cè)量?jī)煞N模式下網(wǎng)絡(luò)的仿真可以達(dá)到的吞吐量,找出網(wǎng)絡(luò)瓶頸,并且說(shuō)明如何改進(jìn)注:拓?fù)渲械木W(wǎng)絡(luò)都是Ethernet網(wǎng)實(shí)驗(yàn)內(nèi)容數(shù)據(jù)中心模擬實(shí)現(xiàn)及主要代碼解釋a. 設(shè)置自定義的attribu
2、te為了做實(shí)驗(yàn)方便,設(shè)置如下自定義attribute: pattern:通信模式,all-to-all或many-to-one,默認(rèn)為1 defaultDst:多對(duì)一模式下,接收消息的默認(rèn)服務(wù)器序號(hào),默認(rèn)為0 verbose:enable或者disable PacketSink和OnOffApplication的日志,默認(rèn)為false DataRate1:定義數(shù)據(jù)中心拓?fù)涞谝粚拥臄?shù)據(jù)傳輸速率(Mbps),默認(rèn)為1.0 DataRate2:定義數(shù)據(jù)中心拓?fù)涞诙拥臄?shù)據(jù)傳輸速率(Mbps),默認(rèn)為1.0 DataRate3:定義數(shù)據(jù)中心拓?fù)涞谌龑拥臄?shù)據(jù)傳輸速率(Mbps),默認(rèn)為1.5實(shí)現(xiàn)代碼如下
3、: uint16_t pattern = 1; uint16_t nodesNum = 8; uint16_t defaultDst = 0; float DataRate1 = 1.0; float DataRate2 = 1.0; float DataRate3 = 1.5; uint16_t port = 50000; bool verbose = false; CommandLine cmd; cmd.AddValue(pattern, number of traffic pattern, pattern);/pattern1:all-to-all pattern2:many-to-o
4、ne cmd.AddValue(defaultDst, default destination server node in pattern 2, defaultDst); cmd.AddValue(DataRate1, data rate of csma network at level 1, DataRate1); cmd.AddValue(DataRate2, data rate of csma network at level 2, DataRate2); cmd.AddValue(DataRate3, data rate of csma network at level 3, Dat
5、aRate3); cmd.AddValue (verbose, Tell sink and onoff applications to log if true, verbose); cmd.Parse(argc, argv); LogComponentEnable (DataCenterSimulation, LOG_LEVEL_INFO); if (verbose) LogComponentEnable (PacketSink, LOG_LEVEL_INFO); LogComponentEnable (OnOffApplication, LOG_LEVEL_INFO); b. 創(chuàng)建結(jié)點(diǎn)根據(jù)實(shí)
6、驗(yàn)要求,總共需要?jiǎng)?chuàng)建15個(gè)結(jié)點(diǎn),包括: 8 servers 4 ToR switches 2 Aggregation switches 1 Core switch實(shí)現(xiàn)代碼如下: /create nodes NodeContainer n1_8; n1_8.Create(8); NodeContainer t1_4; t1_4.Create(4); NodeContainer a12; a12.Create(2); NodeContainer c1; c1.Create(1);c. 創(chuàng)建CSMA網(wǎng)絡(luò)節(jié)點(diǎn)整個(gè)數(shù)據(jù)中心網(wǎng)絡(luò)拓?fù)鋸南峦峡梢苑譃槿龑?,?第一層:由服務(wù)器與ToR組成的ethernet網(wǎng)
7、絡(luò),共有4個(gè),編號(hào)為CSMA11,CSMA12,CSMA13,CSMA14 第二層:由ToR與Aggregation組成的ethernet網(wǎng)絡(luò),共有2個(gè),編號(hào)為CSMA21,CSMA22 第三層:由Aggregation與Core組成的ethernet網(wǎng)絡(luò),共有1個(gè),編號(hào)為CSMA3將創(chuàng)建好的15個(gè)網(wǎng)絡(luò)結(jié)點(diǎn)分配到這7個(gè)CSMA網(wǎng)絡(luò)中,實(shí)現(xiàn)代碼如下: /create csma nodes NodeContainer csmaNodes11 = NodeContainer(n1_8.Get(0),n1_8.Get(1),t1_4.Get(0); NodeContainer csmaNodes12
8、= NodeContainer(n1_8.Get(2),n1_8.Get(3),t1_4.Get(1); NodeContainer csmaNodes13 = NodeContainer(n1_8.Get(4),n1_8.Get(5),t1_4.Get(2); NodeContainer csmaNodes14 = NodeContainer(n1_8.Get(6),n1_8.Get(7),t1_4.Get(3); NodeContainer csmaNodes21 = NodeContainer(t1_4.Get(0),t1_4.Get(1),a12.Get(0); NodeContain
9、er csmaNodes22 = NodeContainer(t1_4.Get(2),t1_4.Get(3),a12.Get(1); NodeContainer csmaNodes3 = NodeContainer(a12.Get(0),a12.Get(1),c1.Get(0);d. 設(shè)置CSMA網(wǎng)絡(luò)attribute,并將其安裝到相應(yīng)結(jié)點(diǎn)上根據(jù)實(shí)驗(yàn)要求中的網(wǎng)絡(luò)拓?fù)?,設(shè)置相應(yīng)網(wǎng)絡(luò)的屬性 所有直接相連的兩個(gè)結(jié)點(diǎn)之間的延遲都為500ns 第一層和第二層CSMA網(wǎng)絡(luò)的數(shù)據(jù)傳輸速率都為1.0Mbps,第三層為1.5Mbps然后安裝到相應(yīng)的網(wǎng)絡(luò)結(jié)點(diǎn)上,實(shí)現(xiàn)代碼如下(DataRate可以通過(guò)命令行參數(shù)設(shè)置
10、,默認(rèn)值即為原實(shí)驗(yàn)要求): /create the channels first without any IP addressing information CsmaHelper csma1; sprintf(buf,%1.1fMbps,DataRate1); csma1.SetChannelAttribute (DataRate, StringValue (buf); csma1.SetChannelAttribute (Delay, StringValue (500ns); NetDeviceContainer csmaDevices11 = csma1.Install (csmaNode
11、s11); NetDeviceContainer csmaDevices12 = csma1.Install (csmaNodes12); NetDeviceContainer csmaDevices13 = csma1.Install (csmaNodes13); NetDeviceContainer csmaDevices14 = csma1.Install (csmaNodes14); CsmaHelper csma2; sprintf(buf,%1.1fMbps,DataRate2); csma2.SetChannelAttribute (DataRate, StringValue (
12、buf); csma2.SetChannelAttribute (Delay, StringValue (500ns); NetDeviceContainer csmaDevices21 = csma2.Install (csmaNodes21); NetDeviceContainer csmaDevices22 = csma2.Install (csmaNodes22); CsmaHelper csma3; sprintf(buf,%1.1fMbps,DataRate3); csma3.SetChannelAttribute (DataRate, StringValue (buf); csm
13、a3.SetChannelAttribute (Delay, StringValue (500ns); NetDeviceContainer csmaDevices3 = csma3.Install (csmaNodes3);e. 分配網(wǎng)絡(luò)IP根據(jù)實(shí)驗(yàn)要求,為每個(gè)結(jié)點(diǎn)安裝協(xié)議棧,并為7個(gè)CSMA網(wǎng)絡(luò)分配IP,實(shí)現(xiàn)代碼如下 /assign IP address NS_LOG_INFO (Assign IP address.); InternetStackHelper stack; stack.Install (n1_8); stack.Install (t1_4); stack.Install
14、(a12); stack.Install (c1); Ipv4AddressHelper address; address.SetBase (10.0.1.0, 255.255.255.0); Ipv4InterfaceContainer csmaInterfaces11 = address.Assign (csmaDevices11); address.SetBase (10.0.2.0, 255.255.255.0); Ipv4InterfaceContainer csmaInterfaces12 = address.Assign (csmaDevices12); address.SetB
15、ase (10.0.3.0, 255.255.255.0); Ipv4InterfaceContainer csmaInterfaces13 = address.Assign (csmaDevices13); address.SetBase (10.0.4.0, 255.255.255.0); Ipv4InterfaceContainer csmaInterfaces14 = address.Assign (csmaDevices14); address.SetBase (10.1.1.0, 255.255.255.0); Ipv4InterfaceContainer csmaInterfac
16、es21 = address.Assign (csmaDevices21); address.SetBase (10.2.1.0, 255.255.255.0); Ipv4InterfaceContainer csmaInterfaces22 = address.Assign (csmaDevices22); address.SetBase (192.168.1.0, 255.255.255.0); Ipv4InterfaceContainer csmaInterfaces3 = address.Assign (csmaDevices3);f. 初始化路由表這里直接調(diào)用了ns3自帶的路由實(shí)現(xiàn),
17、實(shí)現(xiàn)代碼如下 / Create router nodes, initialize routing database and set up the routing / tables in the nodes. Ipv4GlobalRoutingHelper:PopulateRoutingTables ();g. 創(chuàng)建和分配PacketSink和OnOffClient首先,創(chuàng)建sink和OnOff,實(shí)現(xiàn)代碼如下 /Create sinkApp and OnOffClient ApplicationContainer clientAppnodesNum4; ApplicationContainer
18、sinkAppnodesNum;然后,分配sink到所有的server結(jié)點(diǎn)上,實(shí)現(xiàn)代碼如下(其中nodesNum表示server個(gè)數(shù)): for(unsigned int i = 0;i nodesNum; i+) PacketSinkHelper packetSinkHelper (ns3:TcpSocketFactory, getAddress(i,port,csmaInterfaces11,csmaInterfaces12,csmaInterfaces13,csmaInterfaces14); sinkAppi = packetSinkHelper.Install (n1_8.Get (
19、i); sinkAppi.Start(Seconds (1.0); sinkAppi.Stop(Seconds (60.0); 再然后,分配OnOffClient到server結(jié)點(diǎn)上,并且根據(jù)pattern不同,進(jìn)行不同的配置 pattern 1:每個(gè)服務(wù)器都發(fā)送消息給其他服務(wù)器消息,即發(fā)送消息給在另一個(gè)簇上面的4個(gè)服務(wù)器(每個(gè)服務(wù)器上建立4個(gè)OnOffClient) pattern 2:每個(gè)服務(wù)器都發(fā)送消息給同一個(gè)服務(wù)器,可以默認(rèn)為n1(每個(gè)服務(wù)器(n1除外)上建立1個(gè)OnOffClient)實(shí)現(xiàn)代碼如下 for(int i = 0; i nodesNum; i+) uint16_t dst
20、 = 0; if(pattern=1)/all-to-all pattern for(int j = 0 ;j 4; j+) if(iTCP Stream Graph-Throughput Graph來(lái)查看整個(gè)過(guò)程中該結(jié)點(diǎn)上的吞吐量變化情況 使用statistics-Summary來(lái)查看當(dāng)前結(jié)點(diǎn)上網(wǎng)絡(luò)平均吞吐量,以此估計(jì)相應(yīng)CSMA網(wǎng)絡(luò)的吞吐量server n1上的測(cè)量結(jié)果如下Throughput GraphSummaryToR t1上的測(cè)量結(jié)果如下Throughput GraphSummaryAggregation a1上的測(cè)量結(jié)果如下Throughput GraphSummaryb. pa
21、ttern 1 實(shí)驗(yàn)結(jié)果分析首先對(duì)實(shí)驗(yàn)結(jié)果進(jìn)行簡(jiǎn)單匯總網(wǎng)絡(luò)結(jié)點(diǎn)帶寬(Mbps)網(wǎng)絡(luò)平均吞吐量(Mbps)CSMA11server n11.00.255CSMA21ToR t11.00.541CSMA3Aggregation a11.50.993從上面的結(jié)果可以看出 第1層CSMA網(wǎng)絡(luò)平均吞吐量是0.255Mbps,帶寬利用率為25.5%; 第2層CSMA網(wǎng)絡(luò)平均吞吐量是0.541Mbps,帶寬利用率為54.1%; 第3層CSMA網(wǎng)絡(luò)平均吞吐量是0.993Mbps,帶寬利用率為66.2%。c. pattern 1 瓶頸及改進(jìn) 瓶頸根據(jù)以上的實(shí)驗(yàn)結(jié)果可以看出來(lái),從網(wǎng)絡(luò)的平均吞吐量來(lái)看:第3層CSM
22、A第2層CSMA第1層CSMA2,從帶寬利用率上看也是這樣,所以作為core switch連接兩個(gè)子網(wǎng)絡(luò)但帶寬過(guò)小的第三層網(wǎng)絡(luò)成了整個(gè)網(wǎng)絡(luò)的瓶頸。 改進(jìn)可以加大第3層網(wǎng)絡(luò)的帶寬,防止數(shù)據(jù)流量過(guò)大出現(xiàn)擁塞的情況發(fā)生。因此最后確定的網(wǎng)絡(luò)帶寬如下所示:o CSMA11-14:1.0Mbpso CSMA21-22:1.0Mbpso CSMA3 :2.0Mbps 改進(jìn)結(jié)果執(zhí)行命令行./waf -run scratch/DC -DataRate1=1.0 -DataRate2=1.0 -DataRate3=2.0,以相同方式測(cè)量網(wǎng)絡(luò),得到的結(jié)果如下:網(wǎng)絡(luò)結(jié)點(diǎn)帶寬(Mbps)網(wǎng)絡(luò)平均吞吐量(Mbps)CSM
23、A11server n11.00.306CSMA21ToR t11.00.523CSMA3Aggregation a12.00.990從上面的結(jié)果可以看出加大第三層網(wǎng)絡(luò)的帶寬,確實(shí)提高了整個(gè)網(wǎng)絡(luò)的吞吐量,尤其是對(duì)最底層的server結(jié)點(diǎn)來(lái)說(shuō)。d. pattern 2 實(shí)驗(yàn)結(jié)果執(zhí)行命令./waf -run scratch/DC -pattern=2,實(shí)驗(yàn)運(yùn)行結(jié)果如下所示從上面的結(jié)果可以看出,8個(gè)OnOffClient都將數(shù)據(jù)傳輸?shù)絥1,產(chǎn)生的pcap文件如下所示為了分析patten 2的網(wǎng)絡(luò)吞吐量,根據(jù)網(wǎng)絡(luò)拓?fù)涞膶?duì)稱(chēng)性,選取測(cè)量位置 CSMA11:通過(guò)server n1(node 0/devic
24、e 0)來(lái)估計(jì) CSMA12:通過(guò)server n3(node 2/device 0)來(lái)估計(jì) CSMA13:通過(guò)server n5(node 4/device 0)來(lái)估計(jì) CSMA21:通過(guò)ToR t1(node 8/device 1)來(lái)估計(jì) CSMA22:通過(guò)ToR t3(node 10/device 1)來(lái)估計(jì) CSMA3:通過(guò)Aggregation a1(node 12/device 1)來(lái)估計(jì)選取的測(cè)量標(biāo)準(zhǔn)為吞吐量,具體方法是 使用wireshark分析相應(yīng)的pcap文件中的tcp包 使用statistics-TCP Stream Graph-Throughput Graph來(lái)查看整個(gè)
25、過(guò)程中該結(jié)點(diǎn)上的吞吐量變化情況 使用statistics-Summary來(lái)查看當(dāng)前結(jié)點(diǎn)上網(wǎng)絡(luò)平均吞吐量,以此估計(jì)相應(yīng)CSMA網(wǎng)絡(luò)的吞吐量server n1上的測(cè)量結(jié)果如下Throughput GraphSummaryserver n3上的測(cè)量結(jié)果如下Throughput GraphSummaryserver n5上的測(cè)量結(jié)果如下Throughput GraphSummaryToR t1上的測(cè)量結(jié)果如下Throughput GraphSummaryToR t3上的測(cè)量結(jié)果如下Throughput GraphSummaryAggregation a1上的測(cè)量結(jié)果如下Throughput GraphSummarye. pattern 2 實(shí)驗(yàn)結(jié)果分析首先對(duì)實(shí)驗(yàn)結(jié)果進(jìn)行簡(jiǎn)單匯總網(wǎng)絡(luò)結(jié)點(diǎn)帶寬(Mbps)網(wǎng)絡(luò)平均吞吐量(Mbps)CSMA11server n11.00.974CSMA12server n31.00.181CSMA13server n51.00.115CSMA21ToR t11.00.601CSMA22ToR t31.00.178CSMA3Aggregation a11.50.361從上面的結(jié)果可以看出 第1層CSMA11網(wǎng)絡(luò)平均吞吐量是0.974Mbps,帶寬利用率為
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶(hù)所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶(hù)上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶(hù)上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶(hù)因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 拆除工程噪聲控制重點(diǎn)及安全保證措施
- 科教版六年級(jí)科學(xué)下冊(cè)教學(xué)計(jì)劃
- 幼兒園體智能健康促進(jìn)計(jì)劃
- 生態(tài)濕地混凝土澆筑安全技術(shù)措施
- 九年級(jí)道德與法治下冊(cè)考試復(fù)習(xí)教學(xué)計(jì)劃
- 幼兒園教學(xué)教研學(xué)生發(fā)展計(jì)劃
- 青少年團(tuán)體德育工作機(jī)構(gòu)職責(zé)
- 礦山設(shè)備投標(biāo)設(shè)計(jì)制造測(cè)試措施
- 車(chē)站水電氣故障報(bào)修排查處理流程
- 三年級(jí)上冊(cè)班主任工作計(jì)劃
- 江蘇南京金陵中學(xué)2024~2025學(xué)年高二下冊(cè)期末考試數(shù)學(xué)試題含解析
- 2025年醫(yī)療美容行業(yè)私密整形技術(shù)與市場(chǎng)規(guī)范報(bào)告
- 2025至2030中國(guó)海洋生物技術(shù)行業(yè)市場(chǎng)發(fā)展現(xiàn)狀及競(jìng)爭(zhēng)格局與投資發(fā)展報(bào)告
- 【課件】破繭 逐光-2026屆新高三啟航主題班會(huì):挑戰(zhàn)極限成就夢(mèng)想(含規(guī)劃指南、學(xué)法指導(dǎo)、心理護(hù)航)
- 教師學(xué)雷鋒管理制度
- 湖南2025年湖南江華瑤族自治縣招聘184名事業(yè)單位工作人員筆試歷年參考題庫(kù)附帶答案詳解
- 2025至2030中國(guó)化妝品檢測(cè)行業(yè)發(fā)展分析及競(jìng)爭(zhēng)策略與趨勢(shì)預(yù)測(cè)報(bào)告
- 盤(pán)古java面試題及答案
- 微電子工藝實(shí)驗(yàn)報(bào)告
- 金屬材料檢驗(yàn)的標(biāo)準(zhǔn)課件
- 暑假人教版7升8年級(jí)英語(yǔ)試卷試題及答案
評(píng)論
0/150
提交評(píng)論