久久久久久精品无码人妻_青春草无码精品视频在线观_无码精品国产VA在线观看_国产色无码专区在线观看

代寫ECE438 Communication Networks

時間:2024-02-16  來源:  作者: 我要糾錯



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”.
請加QQ:99515681  郵箱:99515681@q.com   WX:codehelp 

標簽:

掃一掃在手機打開當前頁
  • 上一篇:上海小學體育可強健體魄,提升學生堅強毅力
  • 下一篇:代寫ACP Assignment 1 Specificaons
  • 無相關信息
    昆明生活資訊

    昆明圖文信息
    蝴蝶泉(4A)-大理旅游
    蝴蝶泉(4A)-大理旅游
    油炸竹蟲
    油炸竹蟲
    酸筍煮魚(雞)
    酸筍煮魚(雞)
    竹筒飯
    竹筒飯
    香茅草烤魚
    香茅草烤魚
    檸檬烤魚
    檸檬烤魚
    昆明西山國家級風景名勝區
    昆明西山國家級風景名勝區
    昆明旅游索道攻略
    昆明旅游索道攻略
  • 短信驗證碼平臺 理財 WPS下載

    關于我們 | 打賞支持 | 廣告服務 | 聯系我們 | 網站地圖 | 免責聲明 | 幫助中心 | 友情鏈接 |

    Copyright © 2025 kmw.cc Inc. All Rights Reserved. 昆明網 版權所有
    ICP備06013414號-3 公安備 42010502001045

    久久久久久精品无码人妻_青春草无码精品视频在线观_无码精品国产VA在线观看_国产色无码专区在线观看

    国产二区视频在线播放| 欧美大黑帍在线播放| 黄色a级三级三级三级| heyzo亚洲| 成年在线观看视频| 欧洲美女亚洲激情| 国产小视频精品| 日本黄网站免费| 免费看日本毛片| 久久99久久久久久| 伊人再见免费在线观看高清版| 一级黄色录像在线观看| 超碰在线播放91| 国产小视频精品| 国产九九在线观看| 在线看的黄色网址| 国内外成人免费在线视频| 日韩av片网站| 日韩大片一区二区| 亚洲另类第一页| 一本色道久久亚洲综合精品蜜桃 | 亚洲精品中文字幕乱码无线| 欧美特级aaa| 天天爽夜夜爽一区二区三区| 亚洲老女人av| 精品亚洲一区二区三区四区| 日本人69视频| 人人妻人人澡人人爽精品欧美一区| 国产黑丝在线视频| 日韩精品一区二区三区四| 和岳每晚弄的高潮嗷嗷叫视频| 欧美激情 国产精品| 拔插拔插海外华人免费| 成人免费播放器| 激情网站五月天| 国内自拍视频网| 手机av在线免费| 久久精品国产精品亚洲精品色| a级网站在线观看| 人妻互换免费中文字幕| 欧美 丝袜 自拍 制服 另类| 国产精品欧美激情在线观看| 天天操,天天操| 男女h黄动漫啪啪无遮挡软件| 99er在线视频| 欧美激情成人网| 久久出品必属精品| 久久av综合网| 人人爽人人av| www.久久com| 日韩a级在线观看| 亚洲天堂av线| 三级在线免费观看| av天堂永久资源网| 国产免费中文字幕| 一本久道高清无码视频| 中文字幕在线导航| 国产制服91一区二区三区制服| 欧洲黄色一级视频| 久久成年人网站| 国产精品久久久久久久乖乖| 免费在线观看毛片网站| 国产乱叫456| 一女被多男玩喷潮视频| 国内外成人免费在线视频| 日韩一区二区高清视频| 国产自偷自偷免费一区| 青青视频免费在线| 国产精彩免费视频| 日韩不卡视频一区二区| 精品久久久久av| 黄色一级视频播放| 精品久久久噜噜噜噜久久图片 | www.日日操| av动漫在线免费观看| 天天爱天天操天天干| 国产成人一区二区三区别| 国产九九在线观看| 国产黄色一级网站| 永久免费看av| 亚洲精品综合在线观看| 丰满人妻中伦妇伦精品app| 成人免费看片视频在线观看| 日本www.色| 精品国产一区三区| 精品少妇人妻av一区二区| 成年人在线看片| 成人免费观看在线| 一区二区久久精品| 天天操狠狠操夜夜操| 无码 制服 丝袜 国产 另类| 婷婷中文字幕在线观看| aⅴ在线免费观看| 久久亚洲精品无码va白人极品| 一级做a免费视频| 热久久精品免费视频| 日韩在线综合网| 成人国产在线看| 自拍一级黄色片| 538任你躁在线精品免费| 日韩网址在线观看| 青青青青草视频| 久久久久久久香蕉| 91xxx视频| 久久久福利影院| 欧美成人三级在线播放| 亚洲视频在线a| 黄色一级一级片| 欧美精品色婷婷五月综合| www..com日韩| 久久久亚洲国产精品| 女人色极品影院| 屁屁影院ccyy国产第一页| 国产高潮呻吟久久久| 特级毛片在线免费观看| 爱豆国产剧免费观看大全剧苏畅| 欧美性猛交xxx乱久交| 麻豆传传媒久久久爱| 亚洲中文字幕无码不卡电影| 久久国产亚洲精品无码| 无码播放一区二区三区| 欧美日韩一道本| 欧美日韩二三区| 黄色影院一级片| 黄在线观看网站| 凹凸国产熟女精品视频| 久久精品国产精品亚洲色婷婷| 欧美三级一级片| 日韩 欧美 高清| 国产一二三四在线视频| 日韩一级理论片| 亚洲一区二区三区观看| 男女私大尺度视频| 成年人网站av| 国产精品久久久久久久99| 911av视频| 午夜久久久久久久久久久| 欧美 亚洲 视频| 国产妇女馒头高清泬20p多| 欧美综合在线播放| 凹凸国产熟女精品视频| 国产a级片免费观看| 天天综合网日韩| 天堂网成人在线| 99热这里只有精品免费| 乱人伦xxxx国语对白| 少妇高清精品毛片在线视频| 天天爱天天操天天干| 久久久九九九热| 日韩极品视频在线观看| 国产精品丝袜久久久久久消防器材| aa在线免费观看| 欧美wwwwwww| 51xx午夜影福利| 青青草原成人网| 香蕉视频999| wwwwww欧美| 久久精品一区二| 亚洲综合伊人久久| 亚洲国产成人精品无码区99| 91视频免费版污| 在线观看免费黄色片| 黄色国产一级视频| 中文字幕国内自拍| 在线观看免费黄色片| 9久久9毛片又大又硬又粗| 亚洲精品视频导航| a级网站在线观看| 丰满爆乳一区二区三区| 日本高清一区二区视频| 国产精品又粗又长| 视频在线观看免费高清| 久草视频国产在线| 亚洲天堂网2018| 日本欧美黄色片| 99日在线视频| 国产精品97在线| 天堂av免费看| 毛葺葺老太做受视频| 青青草综合视频| 亚洲国产精品毛片av不卡在线| 福利在线小视频| 国产一线二线三线在线观看| 免费在线看黄色片| 亚洲精品久久久久久宅男| 国产精品久久..4399| 亚洲三级在线观看视频| 2022亚洲天堂| 日本一道在线观看| 在线观看免费的av| 人妻有码中文字幕| 老司机午夜网站| 国产三级三级看三级| 黄色一级片播放| 久久久久久久久影视| av在线网址导航| 欧美污视频网站| 亚洲精品无码国产| 成人在线观看www| 亚洲免费黄色网|