精品深夜AV无码一区二区_伊人久久无码中文字幕_午夜无码伦费影视在线观看_伊人久久无码精品中文字幕

代寫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  郵箱:[email protected]   WX:codehelp 

標簽:

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

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

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

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

    精品深夜AV无码一区二区_伊人久久无码中文字幕_午夜无码伦费影视在线观看_伊人久久无码精品中文字幕
    <samp id="e4iaa"><tbody id="e4iaa"></tbody></samp>
    <ul id="e4iaa"></ul>
    <blockquote id="e4iaa"><tfoot id="e4iaa"></tfoot></blockquote>
    • <samp id="e4iaa"><tbody id="e4iaa"></tbody></samp>
      <ul id="e4iaa"></ul>
      <samp id="e4iaa"><tbody id="e4iaa"></tbody></samp><ul id="e4iaa"></ul>
      <ul id="e4iaa"></ul>
      <th id="e4iaa"><menu id="e4iaa"></menu></th>
      99久久久无码国产精品| 91麻豆swag| 99精品在线免费| 久久影院午夜论| 狠狠网亚洲精品| 日韩无一区二区| 韩国欧美一区二区| 国产色91在线| 高清在线不卡av| 国产精品第一页第二页第三页| 成人禁用看黄a在线| 亚洲伦在线观看| 欧美日韩中文精品| 免费日韩伦理电影| 久久综合给合久久狠狠狠97色69| 国产精品资源网站| 伊人婷婷欧美激情| 欧美日韩大陆在线| 麻豆精品国产传媒mv男同| 久久蜜桃一区二区| 99久久久免费精品国产一区二区| 亚洲激情自拍视频| 欧美电视剧在线看免费| 成人午夜在线播放| 亚洲成av人在线观看| 精品欧美一区二区三区精品久久| 国产麻豆一精品一av一免费| 日韩理论片一区二区| 欧美一区二区三区在线观看| 国产盗摄女厕一区二区三区| 亚洲男人的天堂网| 日韩一区二区影院| 波多野结衣视频一区| 日韩精品电影在线观看| 国产欧美一区二区精品婷婷| 欧美影视一区在线| 丁香婷婷深情五月亚洲| 天使萌一区二区三区免费观看| 久久久久久麻豆| 欧美日韩一区精品| hitomi一区二区三区精品| 亚洲成a人v欧美综合天堂| 国产日本欧洲亚洲| 日韩三级伦理片妻子的秘密按摩| 91小视频在线观看| 国产精品一区二区在线播放 | 久久伊人中文字幕| 在线观看日韩电影| 国产69精品久久99不卡| 日韩不卡一区二区| 亚洲精品成人精品456| 欧美激情在线免费观看| 精品日韩欧美一区二区| 欧美喷潮久久久xxxxx| 91视频.com| 99视频超级精品| 成人免费电影视频| 国产成人免费视频一区| 国产曰批免费观看久久久| 美女一区二区三区| 日本午夜精品一区二区三区电影| 亚洲精品成人悠悠色影视| 综合欧美亚洲日本| 亚洲欧洲av在线| 亚洲三级小视频| 亚洲人成网站在线| 一区二区在线免费| 亚洲综合色自拍一区| 亚洲免费资源在线播放| 亚洲乱码国产乱码精品精的特点| 国产精品高潮呻吟| 亚洲色图清纯唯美| 亚洲国产综合视频在线观看| 亚洲在线成人精品| 午夜精品视频一区| 日本强好片久久久久久aaa| 蜜臂av日日欢夜夜爽一区| 捆绑变态av一区二区三区| 久久国产欧美日韩精品| 韩国av一区二区| 成人深夜福利app| 91色乱码一区二区三区| 欧美日韩综合在线| 欧美一区二区三区白人| 精品国产91久久久久久久妲己| 精品美女在线观看| 国产精品免费丝袜| 一区二区三区中文免费| 青青草视频一区| 国产成人免费在线观看不卡| 91免费视频网址| 欧美日韩精品一二三区| 日韩一区二区精品葵司在线| 国产日韩欧美综合在线| 国产精品大尺度| 日韩中文字幕亚洲一区二区va在线 | 色先锋资源久久综合| 欧美久久久久免费| 中文字幕久久午夜不卡| 亚洲成人www| 国产成人av电影在线观看| 91首页免费视频| 日韩欧美国产系列| 亚洲人成精品久久久久久| 热久久一区二区| www.欧美精品一二区| 欧美女孩性生活视频| 日本一二三四高清不卡| 香蕉av福利精品导航| 成人久久视频在线观看| 4438x成人网最大色成网站| 国产精品日产欧美久久久久| 男人的天堂亚洲一区| 94-欧美-setu| 国产亚洲欧美一区在线观看| 亚洲小说欧美激情另类| 高清在线不卡av| 欧美mv和日韩mv国产网站| 亚洲最大成人综合| 丰满白嫩尤物一区二区| 日韩午夜av电影| 亚洲丶国产丶欧美一区二区三区| 成人国产视频在线观看| 日韩欧美国产综合在线一区二区三区| 亚洲欧洲国产日本综合| 国产一区二区免费在线| 欧美二区在线观看| 亚洲韩国精品一区| 色婷婷激情久久| 综合久久一区二区三区| 国产一区不卡在线| 精品国产乱码久久久久久1区2区| 亚洲成a人v欧美综合天堂下载| av网站一区二区三区| 国产精品拍天天在线| 国产老肥熟一区二区三区| 91精品国产综合久久久久久久久久| 中文字幕在线不卡视频| 国产91露脸合集magnet| 国产女人aaa级久久久级| 国产精品一区二区免费不卡 | 欧美乱妇一区二区三区不卡视频| 亚洲色图丝袜美腿| 91同城在线观看| 最好看的中文字幕久久| 成人爱爱电影网址| 中文字幕在线一区| 99精品久久99久久久久| 一区在线播放视频| 色系网站成人免费| 亚洲一区二区精品视频| 欧美日韩电影一区| 肉肉av福利一精品导航| 制服丝袜在线91| 久久国产三级精品| 国产午夜精品理论片a级大结局 | 欧美性三三影院| 亚洲成人动漫在线免费观看| 欧美日韩国产欧美日美国产精品| 亚洲成人激情社区| 日韩三级在线观看| 国产精品88av| 亚洲精品你懂的| 欧美人妖巨大在线| 看电影不卡的网站| 亚洲国产精品成人综合色在线婷婷 | 欧美日韩在线观看一区二区| 亚洲成人综合在线| 欧美成人三级在线| 成人网页在线观看| 亚洲成a天堂v人片| 久久亚洲一区二区三区四区| 成人国产一区二区三区精品| 亚洲成人精品在线观看| 久久久天堂av| 欧美日韩精品专区| 粉嫩欧美一区二区三区高清影视| 一区二区三区中文字幕精品精品| 日韩一区二区免费在线观看| 成人avav在线| 蜜臀av性久久久久av蜜臀妖精| 久久精品亚洲精品国产欧美| 在线亚洲欧美专区二区| 国产激情一区二区三区桃花岛亚洲| 亚洲丝袜另类动漫二区| 欧美成人精精品一区二区频| 一本到一区二区三区| 国产精品一区二区免费不卡| 亚洲国产日韩在线一区模特| 久久精品视频在线看| 欧美一级二级三级蜜桃| 一本大道久久a久久精二百| 国产一区二区导航在线播放| 日日摸夜夜添夜夜添国产精品| 国产精品欧美一级免费| 日韩一级视频免费观看在线| 91久久人澡人人添人人爽欧美 | 成人毛片老司机大片| 青青草伊人久久| 亚洲成人免费影院|