成a人片国产精品_色悠悠久久综合_国产精品美女久久久久久2018_日韩精品一区二区三区中文精品_欧美亚洲国产一区在线观看网站_中文字幕一区在线_粉嫩一区二区三区在线看_国产亚洲欧洲997久久综合_不卡一区在线观看_亚洲欧美在线aaa_久久99精品国产_欧美卡1卡2卡_国产精品你懂的_日韩精品91亚洲二区在线观看_国内一区二区视频_91丨国产丨九色丨pron

代寫(xiě)ECE438 Communication Networks

時(shí)間:2024-02-16  來(lái)源:  作者: 我要糾錯(cuò)



ECE438: Communication Networks Fall 2023
Machine Problem 2
Abstract
This machine problem tests your understanding of reliable packet transfer. You will
use UDP to implement your own version of TCP. Your implementation must be able to
tolerate packet drops, allow other concurrent connections a fair chance, and must not
be overly nice to other connections (should not give up the entire bandwidth to other
connections).
1 Introduction
In this MP, you will implement a transport protocol with properties equivalent to TCP. You
have been provided with a file called sender main.c, which declares the function
void reliablyTransfer(char* hostname, unsigned short int hostUDPport, char*
filename, unsigned long long int bytesToTransfer).
This function should transfer the first bytesToTransfer bytes of filename to the receiver at
hostname: hostUDPport correctly and efficiently, even if the network drops or reorders
some of your packets. You also have receiver main.c, which declares
void reliablyReceive(unsigned short int myUDPport, char* destinationFile). This
function is reliablyTransfer’s counterpart, and should write what it receives to a file called
destinationFile.
2 What is expected in this MP?
Your job is to implement reliablyTransfer()and reliablyReceive() functions, with the
following requirements:
• The data written to disk by the receiver must be exactly what the sender was given.
• Two instances of your protocol competing with each other must converge to roughly fairly
sharing the link (same throughputs ±10%), within 100 RTTs. The two instances might
not be started at the exact same time.
• Your protocol must be somewhat TCP friendly: an instance of TCP competing with you
must get on average at least half as much throughput as your flow.
1
ECE438: Communication Networks Fall 2023
• An instance of your protocol competing with TCP must get on average at least half as
much throughput as the TCP flow. (Your protocol must not be overly nice.)
• All of the above should hold in the presence of any amount of dropped packets. All flows,
including the TCP flows, will see the same rate of drops. The network will not introduce
bit errors.
• Your protocol must, in steady state (averaged over 10 seconds), utilize at least 70% of
bandwidth when there is no competing traffic, and packets are not artificially dropped or
reordered.
• You cannot use TCP in any way. Use SOCK DGRAM (UDP), not SOCK STREAM.
The test environment has a 20Mbps connection, and a 20ms RTT.
3 VM Setup
You’ll need 2 VMs to test your client and server together. Unfortunately, VirtualBox’s default setup does not allow its VMs to talk to the host or each other. There is a simple fix,
but then that prevents them from talking to the internet. So, be sure you have done all of
your apt-get installs before doing the following! (To be sure, just run: sudo apt-get install
gcc make gdb valgrind iperf tcpdump ) Make sure the VMs are fully shut down. Go to
each of their Settings menus, and go to the Network section. Switch the Adapter Type from
NAT to “host-only”, and click ok. When you start them, you should be able to ssh to them
from the host, and it should be able to ping the other VM. You can use ifconfig to find out
the VMs’ IP addresses. If they both get the same address, sudo ifconfig eth0 newipaddr
will change it. (If you make the 2nd VM by cloning the first + choosing reinitialize MAC
address, that should give different addresses.)
New in MP2: You can use the same basic test environment described above. However, the
network performance will be ridiculously good (same goes for testing on localhost), so you’ll
need to limit it. The autograder uses tc . If your network interface inside the VM is eth0,
then run (from inside the VM) the following command:
sudo tc qdisc del dev eth0 root 2>/dev/null
to delete existing tc rules. Then use,
sudo tc qdisc add dev eth0 root handle 1:0 netem delay 20ms loss 5%
followed by
sudo tc qdisc add dev eth0 parent 1:1 handle 10: tbf rate 20Mbit burst 10mb
latency 1ms
2
ECE438: Communication Networks Fall 2023
will give you a 20Mbit, 20ms RTT link where every packet sent has a 5% chance to get
dropped. Simply omit the loss n% part to get a channel without artificial drops.
(You can run these commands just on the sender; running them on the receiver as well won’t
make much of a difference, although you’ll get a 20ms RTT if you don’t adjust the delay to
account for the fact that it gets applied twice.)
4 Autograder and submission
We use the autograder to grade your MPs, the submission process is simple.
First, open the autograder web page:
http://10.105.100.204.
This is a ZJUI-private IP. If your device is not accessing it through the campus network,
please use VPN to get a private IP
You will see two sections. MP Submission allows you to submit your assignment. You can
do this by entering your Student ID (start with 320), selecting which MP you are submitting,
selecting the file extension of your files and uploading your MP files. Note: only C/Cpp
files are accepted. When uploading files, add your files one by one, do not choose
multiple files to add at one time. Submission History section allows you to check
your submission history and grade. You can do this by entering your student ID.
Caution: The queue can only handle 200 submissions at one time, so remember to check
your submission status in Submission History after you submit your assignment. During
the hours leading up to the submission, the queue could be long. So it is advisable to get
your work done early.
5 Grade Breakdown
10%: You submitted your assignment correctly and it compiles correctly on the autograder
20%: Your receiver and sender can transfer small files correctly
20%: Your sender and receiver can transfer big files correctly
10%: Your sender and receiver can utilize empty link
20%: Your sender and receiver can transfer files correctly with package dropping
10%: Your sender and receiver are TCP friendly with no loss
10%: Your sender and receiver are TCP friendly with 1% loss
(We will use diff to compare the output file with the downloaded copy, and you should do
the same. If diff produces any output, you aren’t transferring the file correctly.)
3
ECE438: Communication Networks Fall 2023
6 Test Details
Your MP2 code will run entirely within Docker Containers and will be tested via Docker’s
private network.
The testing for MP2 is divided into 7 stages:
1. Compiling: We will compile the code for your sender and receiver. If the compilation is successful, you will receive the basic score for successful compilation; if it fails, you
will receive a score of 0, and subsequent tests will not be conducted.
2. Small file transfer test in a no-loss environment: We will conduct a small file
transfer test of your sender and receiver in a Docker network without any artificially induced
packet loss. First, we’ll launch your receiver code in one container and then your sender code
in another container. The time limit for this task is 5 seconds. If your code can complete the
transfer of the small file within 5 seconds and the output file successfully matches the source
file when compared using diff, you will receive the score for this phase. If this phase fails, no
further tests will be conducted.
3. Large file transfer test in a no-loss environment: We will test your code using
a large file of 18.4MB. The testing method is the same as for the small file, but you have a
time limit of 10 seconds. If the transfer is completed within 10 seconds and passes the diff
comparison, you earn this phase’s score. If this phase fails, subsequent tests will proceed
unaffected.
4. Channel bandwidth utilization test: We will transfer a file in a no-loss environment and place a stricter time constraint on its transfer than the previous tests to ensure
your code utilizes the channel bandwidth to its maximum potential. If the file transfer completes within the stipulated time and passes the diff comparison, you earn this phase’s score.
If this phase fails, subsequent tests will proceed unaffected.
5. File transfer test with 5% packet loss and 20ms delay: We will set the Docker
network to have a 5% packet loss and a 20ms delay and test whether your code can accurately
receive the file. We’ll use a file of several KBs for the test. If the file is transferred correctly
within 10 seconds and passes the diff comparison, you earn this phase’s score. If this phase
fails, subsequent tests will proceed unaffected.
6. TCP-friendly test: This test will be conducted within a 300Mbps channel. Using
iperf3, we will create a TCP stream and measure its baseline rate when it’s the only stream.
Then, we’ll run your code and iperf3 concurrently and test the rate the TCP stream can
achieve when sharing the channel. If the TCP stream manages to get more than 40% of its
baseline rate, the test is passed. If this phase fails, no further tests will be conducted.
7. TCP-friendly test with 1% loss: We will test within a 300Mbps channel with a
4
ECE438: Communication Networks Fall 2023
1% packet loss. Similar to the previous test, we will first record the baseline rate of only the
TCP stream. We’ll then test the rate the TCP stream can achieve when your code and the
TCP stream share the channel. If the TCP stream gets more than 40% of its baseline rate,
the test is passed.
Please note that due to the influence of the autograder’s network environment, there might
be a drop in speed during times of high submission volume. In such cases, you can resubmit
after a while. Each test takes about a minute and a half. We will retain the highest score
from all your submissions as your final score. The files you submit must be named either
“receiver main.cpp”, “sender main.cpp” or “receiver main.c”, “sender main.c”.
請(qǐng)加QQ:99515681  郵箱:99515681@q.com   WX:codehelp 

標(biāo)簽:

掃一掃在手機(jī)打開(kāi)當(dāng)前頁(yè)
  • 上一篇:上海小學(xué)體育可強(qiáng)健體魄,提升學(xué)生堅(jiān)強(qiáng)毅力
  • 下一篇:代寫(xiě)ACP Assignment 1 Specificaons
  • 無(wú)相關(guān)信息
    昆明生活資訊

    昆明圖文信息
    蝴蝶泉(4A)-大理旅游
    蝴蝶泉(4A)-大理旅游
    油炸竹蟲(chóng)
    油炸竹蟲(chóng)
    酸筍煮魚(yú)(雞)
    酸筍煮魚(yú)(雞)
    竹筒飯
    竹筒飯
    香茅草烤魚(yú)
    香茅草烤魚(yú)
    檸檬烤魚(yú)
    檸檬烤魚(yú)
    昆明西山國(guó)家級(jí)風(fēng)景名勝區(qū)
    昆明西山國(guó)家級(jí)風(fēng)景名勝區(qū)
    昆明旅游索道攻略
    昆明旅游索道攻略
  • NBA直播 短信驗(yàn)證碼平臺(tái) 幣安官網(wǎng)下載 歐冠直播 WPS下載

    關(guān)于我們 | 打賞支持 | 廣告服務(wù) | 聯(lián)系我們 | 網(wǎng)站地圖 | 免責(zé)聲明 | 幫助中心 | 友情鏈接 |

    Copyright © 2025 kmw.cc Inc. All Rights Reserved. 昆明網(wǎng) 版權(quán)所有
    ICP備06013414號(hào)-3 公安備 42010502001045

    成a人片国产精品_色悠悠久久综合_国产精品美女久久久久久2018_日韩精品一区二区三区中文精品_欧美亚洲国产一区在线观看网站_中文字幕一区在线_粉嫩一区二区三区在线看_国产亚洲欧洲997久久综合_不卡一区在线观看_亚洲欧美在线aaa_久久99精品国产_欧美卡1卡2卡_国产精品你懂的_日韩精品91亚洲二区在线观看_国内一区二区视频_91丨国产丨九色丨pron
    欧美日韩久久不卡| 精品处破学生在线二十三| 欧美刺激午夜性久久久久久久| 中文字幕日韩一区| 国产自产2019最新不卡| 欧美日韩1区2区| 亚洲同性gay激情无套| 国产综合久久久久影院| 欧美精品色综合| 一区二区三区色| 成人激情免费电影网址| 久久青草国产手机看片福利盒子| 五月天丁香久久| 欧美亚洲丝袜传媒另类| 亚洲日本护士毛茸茸| 丰满少妇久久久久久久| 久久毛片高清国产| 美国av一区二区| 欧美一区二区美女| 五月天网站亚洲| 欧美图区在线视频| 一区二区三区四区av| 一本大道久久a久久综合婷婷| 中文字幕一区二区三区在线播放| 国产+成+人+亚洲欧洲自线| 久久嫩草精品久久久久| 国产一区三区三区| 精品国产制服丝袜高跟| 开心九九激情九九欧美日韩精美视频电影| 欧美日韩一区不卡| 亚洲午夜免费电影| 欧美三级电影精品| 亚洲电影激情视频网站| 欧美日韩三级视频| 午夜精品一区二区三区三上悠亚| 欧美日韩一区二区三区在线| 亚洲国产精品久久人人爱| 欧美在线|欧美| 伊人色综合久久天天人手人婷| 99精品1区2区| 亚洲欧美欧美一区二区三区| 色婷婷精品久久二区二区蜜臂av| 亚洲精品菠萝久久久久久久| 在线影视一区二区三区| 一区二区在线电影| 欧美日韩一区在线观看| 日韩av中文字幕一区二区| 日韩一本二本av| 国产在线看一区| 国产日韩精品一区| av亚洲精华国产精华| 亚洲欧美日韩在线| 精品视频123区在线观看| 日本强好片久久久久久aaa| 欧美成人激情免费网| 国产美女av一区二区三区| 日本一区二区动态图| 99精品视频在线播放观看| 一区二区激情视频| 欧美美女网站色| 久久国产精品99精品国产| 国产亚洲精品久| 99久久久无码国产精品| 亚洲国产成人91porn| 日韩一级免费观看| 国产乱一区二区| 综合欧美亚洲日本| 欧美日韩一区二区不卡| 久久99精品久久久久婷婷| 国产欧美日韩激情| 色综合av在线| 日韩av在线免费观看不卡| 久久久国产午夜精品| 97久久精品人人做人人爽50路 | 亚洲视频狠狠干| 欧洲一区二区三区免费视频| 日本中文字幕一区| 国产午夜精品在线观看| 91小视频在线| 视频一区视频二区在线观看| 精品处破学生在线二十三| 成人av免费在线| 五月开心婷婷久久| 日本一区二区三区国色天香| 欧美体内she精高潮| 国产真实乱子伦精品视频| 亚洲精品国久久99热| 日韩女优电影在线观看| 不卡电影一区二区三区| 午夜日韩在线观看| 国产日韩精品一区| 欧美美女一区二区在线观看| 高清国产一区二区| 亚瑟在线精品视频| 中文字幕欧美激情一区| 在线91免费看| 99这里只有久久精品视频| 青草av.久久免费一区| 亚洲欧美中日韩| 精品日韩一区二区三区| 91国产免费看| 国产高清精品网站| 日韩精品成人一区二区在线| 亚洲天堂精品视频| 精品美女一区二区三区| 在线观看日韩一区| 国产99一区视频免费| 同产精品九九九| 中文字幕亚洲成人| 精品国产一区二区三区久久影院 | 在线免费视频一区二区| 国产一本一道久久香蕉| 亚洲第一二三四区| 国产精品人妖ts系列视频| 欧美一级高清片在线观看| 色诱视频网站一区| 粉嫩一区二区三区性色av| 蜜桃免费网站一区二区三区| 亚洲日本在线a| 久久蜜桃av一区精品变态类天堂| 欧美日韩久久久一区| 97国产一区二区| 国产成人a级片| 久久国产精品99久久久久久老狼 | 日韩精品高清不卡| 亚洲私人黄色宅男| 久久女同精品一区二区| 欧美精品一卡二卡| 色一情一乱一乱一91av| 成人免费高清在线观看| 国产一区中文字幕| 美女视频第一区二区三区免费观看网站| 亚洲久本草在线中文字幕| 欧美高清在线精品一区| 精品久久免费看| 这里只有精品电影| 亚洲国产一区视频| 亚洲欧洲国产日韩| 日本一二三不卡| 久久夜色精品国产欧美乱极品| 欧美一级一区二区| 欧美顶级少妇做爰| 欧美日本一区二区在线观看| 色系网站成人免费| 99r国产精品| 成人国产精品免费| 丰满少妇在线播放bd日韩电影| 国产综合成人久久大片91| 免费精品视频在线| 天堂精品中文字幕在线| 亚洲国产中文字幕在线视频综合| 亚洲人成人一区二区在线观看 | 亚洲国产精品久久久久秋霞影院 | 国产亚洲欧美在线| 26uuu精品一区二区| 日韩精品一区二区三区在线观看| 在线播放亚洲一区| 欧美色网站导航| 欧美日韩在线三级| 欧美日韩日日摸| 欧美精品日韩一区| 欧美久久久久久久久中文字幕| 欧美日韩国产综合一区二区三区| 欧美性猛交xxxxxxxx| 欧美色视频在线| 欧美日韩二区三区| 欧美日本精品一区二区三区| 欧美精品乱码久久久久久按摩| 欧美日韩一区三区四区| 欧美久久久久久久久久| 正在播放一区二区| 日韩欧美国产综合| 欧美精品一区二区三区在线播放 | 日韩精品每日更新| 人人爽香蕉精品| 麻豆精品一区二区av白丝在线| 玖玖九九国产精品| 国产乱码精品一区二区三区av| 国产白丝网站精品污在线入口| 成人精品亚洲人成在线| 91色婷婷久久久久合中文| 91成人看片片| 欧美精品1区2区3区| 欧美大片一区二区| 国产视频在线观看一区二区三区 | 国产精品久久久久久久久免费樱桃| 国产精品免费丝袜| 亚洲欧洲精品一区二区三区| 亚洲精品成人在线| 手机精品视频在线观看| 精一区二区三区| 国产91精品一区二区麻豆亚洲| av亚洲精华国产精华精| 在线观看欧美黄色| 一本色道久久综合精品竹菊| 极品少妇xxxx精品少妇| 日韩一区欧美二区| 三级久久三级久久久| 久久国产尿小便嘘嘘| 国产美女一区二区三区|