<style>
/* .container { overflow-y: hidden; } */
.r { color: rgb(232,26,26); }
.gray { color: rgb(220,220,220); }
.reveal section img { border: none; box-shadow: none; }
.xmin-font { font-size: 0.7em; }
</style>
# 計算機網路
2020/12/15 李庭慶
---
# 投影片連結
https://hackmd.io/@firejox/cs-network-experiment
---
# 實驗繳交時間與規定
----
實驗繳交格式:
* 檔案名稱: 計網_學號_Lab.pdf
* 報告內容包含:
- 姓名+學號
* 頁數不拘,需依照各項實驗要求繳交截圖或相關資料
<span class="r">
* 一人繳交一份(可討論,勿抄襲)
* (很重要!未依格式繳交與以扣分,尤其是檔案名稱)
* 收到作業會回信(請自行確認)
</span>
----
* 實驗繳交時間: 2020/1/10 23:59 前
* Gmail: 109753209@g.nccu.edu.tw
* 有任何問題可以寄信給我
* 實驗室: 大仁樓#200208 MCLAB3
----
# 實驗評分標準
----
* 實驗共有12個 Topics
* 每個 Topic內有多個小題目(難易度不拘)
----
### 實驗檔案連結
* https://drive.google.com/file/d/1WuhMK7RUzwxFaBvaDPn3halHhFD86sx-/view?usp=sharing

---
#  Wireshark
https://www.wireshark.org/
----
### Wireshark
* Wireshark 是一個免費開源的網路封包分析軟體。網路封包分析軟體的功能是截取網路封包,並盡可能顯示出最為詳細的網路封包資料
* 網路管理員使用 Wireshark 來檢測網路問題
* 網路安全工程師使用 Wireshark 來檢查資訊安全相關問題
* 開發者使用 Wireshark 來為新的通訊協定除錯
* 普通使用者使用 Wireshark 來學習網路協定的相關知識
* https://zh.wikipedia.org/wiki/Wireshark
---
# 實驗列表
---
* <span class="gray"> Lab1 : Wireshark Intro </span>
* <span class="gray"> Lab2 : HTTP </span>
* <span class="gray"> Lab3 : DNS </span>
* <span > Lab4 : TCP </span>
* <span > Lab5 : UDP </span>
* <span > Lab6 : IP </span>
---
* <span class="gray"> Lab7 : NAT </span>
* <span class="gray"> Lab8 : ICMP </span>
* <span class="gray"> Lab9 : Ethernet and ARP </span>
* <span class="gray"> Lab10 : DHCP </span>
* <span class="gray"> Lab11 : 802.11 WiFi </span>
* <span class="gray"> Lab12 : SSL </span>
---
## Lab1 : Wireshark Intro
----
#### Lab 1-1
<div style="font-size:0.7em;">
<p>
Taking Wireshark for a Test Run
</p>
* Step1 : 打開瀏覽器(建議用無痕模式)
* Step2 : 打開 Wireshark (建議以系統管理員執行),開始抓 Packet
* Step3 : 複製下方網址,貼上網址列 Enter
- http://gaia.cs.umass.edu/wireshark-labs/INTRO-wireshark-file1.html
* Step4 : Filter 輸入 **`http`**
* Step5 : 找出 **`HTTP GET`**
* Step6 : 停止抓 Packet
<div style="color:#E81A1A">
根據實驗完成畫面與內容完成 回答 Q1-Q4
</div>
</div>
----
#### Lab 1-1
<div style="font-size:0.7em;">
1. List 3 different protocols that appear in the protocol column in the unfiltered packet-listing window in step 7 above.
2. How long did it take from when the HTTP GET message was sent until the HTTP OK reply was received? (By default, the value of the Time column in the packetlisting window is the amount of time, in seconds, since Wireshark tracing began. To display the Time field in time-of-day format, select the Wireshark View pull down menu, then select Time Display Format, then select Time-of-day.)
</div>
----
#### Lab 1-1
<div class="xmin-font">
3. What is the Internet address of the gaia.cs.umass.edu (also known as www.net.cs.umass.edu)? What is the Internet address of your computer?
4. Print the two HTTP messages (GET and OK) referred to in question 2 above. To do so, select Print from the Wireshark File command menu, and select the “Selected Packet Only” and “Print as displayed” radial buttons, and then click OK.
</div>
---
## Lab2 : HTTP
----
#### Lab2-1
<div style="font-size:0.7em;">
<p>
The Basic HTTP GET/response interaction
</p>
* Step1 : 打開瀏覽器(建議用無痕模式)
* Step2 : 打開 Wireshark (建議以系統管理員執行),先不要抓 Packet
* Step3 : Filter 輸入 **`http`**
* Step4 : 等待一分鐘,開始抓 Packet
* Step5 : 複製下方網址,貼上網址列 Enter
- http://gaia.cs.umass.edu/wireshark-labs/HTTP-wireshark-file1.html
* Step6 : 停止抓 Packet
<div class="r">
根據實驗完成畫面與內容完成 回答 Q1-Q7
</div>
</div>
----
#### Lab2-1
<div style="font-size:0.7em;">
1. Is your browser running HTTP version 1.0 or 1.1? What version of HTTP is the server running?
2. What languages (if any) does your browser indicate that it can accept to the server?
3. What is the IP address of your computer? Of the gaia.cs.umass.edu server?
4. What is the status code returned from the server to your browser?
</div>
----
#### Lab2-1
<div style="font-size:0.7em;">
5. When was the HTML file that you are retrieving last modified at the server?
6. How many bytes of content are being returned to your browser?
7. By inspecting the raw data in the packet content window, do you see any headers within the data that are not displayed in the packet-listing window? If so, name one.
</div>
----
#### Lab2-2
<div class="xmin-font">
<p>
The HTTP Conditional GET/response interaction
</p>
* Step1 : 打開瀏覽器(建議用無痕模式)
* Step2 : 打開 Wireshark (建議以系統管理員執行),開始抓 Packet
* Step3 : 複製下方網址,貼上網址列 Enter
- http://gaia.cs.umass.edu/wireshark-labs/HTTP-wireshark-file2.html
* Step4 : 重新整理網頁
* Step5 : 停止抓 Packet ,並在 Filter 輸入 **`http`**
<div class="r">
根據實驗完成畫面與內容完成 回答 Q8-Q11
</div>
</div>
----
#### Lab2-2
<div class="xmin-font">
8. Inspect the contents of the first HTTP GET request from your browser to the server. Do you see an "<span class="r">IF-MODIFIED-SINCE”</span>" line in the HTTP GET?
9. Inspect the contents of the server response. Did the server explicitly return the contents of the file? How can you tell?
10. Now inspect the contents of the second HTTP GET request from your browser to the server. Do you see an “<span class="r">IF-MODIFIED-SINCE:</span>” line in the HTTP GET? If so, what information follows the “<span class="r">IF-MODIFIED-SINCE:</span>” header?
11. What is the HTTP status code and phrase returned from the server in response to this <span class="r">second</span> HTTP GET? Did the server explicitly return the contents of the file? Explain.
</div>
----
#### Lab2-3
<div class="xmin-font">
<p>
Retrieving Long Documents
</p>
* Step1 : 打開瀏覽器(建議用無痕模式)
* Step2 : 打開 Wireshark (建議以系統管理員執行),開始抓 Packet
* Step3 : 複製下方網址,貼上網址列 Enter
- http://gaia.cs.umass.edu/wireshark-labs/HTTP-wireshark-file3.html
* Step4 : 停止抓 Packet ,並在 Filter 輸入 **`http`**
<div class="r">
根據實驗完成畫面與內容完成 回答 Q12-Q15
* 如果做不出來可以用 **`http-ethereal-trace-3`** 檔案來做
</div>
</div>
----
#### Lab2-3
<div class="xmin-font">
12. How many HTTP GET request messages did your browser send? Which packet number in the trace <span class="r">**`contains the GET message for the Bill or Rights`**</span>?
13. Which packet number in the trace contains the status code and phrase associated with the response to the HTTP GET request?
14. What is the status code and phrase in the response?
15. How many data-containing TCP segments were needed to carry the single HTTP response and the text of the Bill of Rights?
</div>
----
#### Lab2-4
<div class="xmin-font">
<p>
HTML Documents with Embedded Objects
</p>
* Step1 : 打開瀏覽器(建議用無痕模式)
* Step2 : 打開 Wireshark (建議以系統管理員執行),開始抓 Packet
* Step3 : 複製下方網址,貼上網址列 Enter
- http://gaia.cs.umass.edu/wireshark-labs/HTTP-wireshark-file4.html
* Step4 : 停止抓 Packet ,並在 Filter 輸入 **`http`**
<div class="r">
根據實驗完成畫面與內容完成 回答 Q16-Q17
* 如果做不出來可以用 **`http-ethereal-trace-4`** 檔案來做
</div>
</div>
----
#### Lab2-4
<div class="xmin-font">
16. How many HTTP GET request messages did your browser send? To which Internet addresses were these GET requests sent?
17. Can you tell whether your browser downloaded the two images serially, or whether they were downloaded from the two web sites in parallel? Explain.
</div>
----
#### Lab2-5
<div class="xmin-font">
<p>
HTTP Authentication
</p>
* Step1 : 打開瀏覽器(建議用無痕模式)
* Step2 : 打開 Wireshark (建議以系統管理員執行),開始抓 Packet
* Step3 : 複製下方網址,貼上網址列 Enter
- http://gaia.cs.umass.edu/wireshark-labs/protected_pages/HTTP-wireshark-file5.html
* Step4 : 輸入帳號 (wireshark-students) 密碼 (network)
* Step5 : 停止抓 Packet ,並在 Filter 輸入 **`http`**
<div class="r">
根據實驗完成畫面與內容完成 回答 Q18-Q19
* 如果做不出來可以用 **`http-ethereal-trace-5`** 檔案來做
</div>
</div>
----
#### Lab2-5
<div class="xmin-font">
18. What is the server’s response (status code and phrase) in response to the initial HTTP GET message from your browser?
19. When your browser’s sends the HTTP GET message for the second time, what new field is included in the HTTP GET message?
</div>
---
## Lab3 : DNS
----
#### Lab3-1
<div class="xmin-font">
<p>
NSLOOKUP 語法:
</p>
* `nslookup www.example.com`
* `nslookup -type=NS example.com`
* `nslookup www.another.site domain.name.sever`
<div class="r">
請依照 **`nslookup`** 指令完成 Q1-Q3 ,並截圖回答問題
</div>
</div>
----
#### Lab3-1
<div class="xmin-font">
1. Run nslookup to obtain the IP address of a Web server in Europe. What is the IP address of that server?
* <span class="r"> `nslookup www.cam.ac.uk` </span>
2. Run nslookup to determine the authoritative DNS servers for a university in Asia.
* <span class="r"> `nslookup -type=NS www.nccu.edu.tw` </span>
3. Run nslookup so that one of the DNS servers obtained in Question 2 is queried for
the mail servers for Yahoo! mail. What is its IP address?
* <span class="r"> `nslookup mail.yahoo.com sun2cc.nccu.edu.tw` </span>
</div>
----
#### Lab3-2
<div class="xmin-font">
<p> IPCONFIG </p>
* `ipconfig` 會顯示所有介面卡的 IP address 、 subnet mask 及 default gateway
* 可以再自己的cmd上試試看ipconfig指令
* <span class="r"> `ipconfig /all` </span>
* <span class="r"> `ipconfig /displaydns` </span>
* <span class="r"> `ipconfig /flushdns` </span>
</div>
----
#### Lab3-3
<div class="xmin-font">
<p> Tracing DNS with Wireshark </p>
* Step 1 : 打開 cmd 輸入以下指令: **`ipconfig /flushdns`**
* Step 2 : 打開瀏覽器(建議用無痕模式)
* Step 3 : 打開 Wireshark (建議以系統管理員執行),在 Filter 輸入 **`ip.addr == 你的電腦的IP`**
* Step 4 : 開始抓 Packet
* Step 5 : 複製下方網址,貼上網址列 Enter
- http://www.ietf.org
* Step 6 : 停止抓 Packet
* <span class="r"> 若看不到任何封包,請將 Filter 內容改成 `dns` </span>
<div class="r">
根據實驗完成畫面與內容完成 回答 Q4-Q10
</div>
</div>
----
#### Lab3-3
<div class="xmin-font">
4. Locate the DNS query and response messages. Are then sent over UDP or TCP?
5. What is the destination port for the DNS query message? What is the source port of DNS response message?
6. To what IP address is the DNS query message sent? Use ipconfig to determine the IP address of your local DNS server. Are these two IP addresses the same?
7. Examine the DNS query message. What <span class="r">“Type”</span> of DNS query is it? Does the
query message contain any <span class="r">“answers”</span>?
</div>
----
#### Lab3-3
<div class="xmin-font">
8. Examine the DNS response message. How many <span class="r">“answers”</span> are provided? What
do each of these answers contain?
9. Consider the subsequent TCP SYN packet sent by your host. Does the destination
IP address of the SYN packet correspond to any of the IP addresses provided in
the DNS response message?
10. This web page contains images. Before retrieving each image, does your host
issue new DNS queries?
</div>
----
#### Lab3-4
<div class="xmin-font">
<p>
使用 NSLOOKUP (1)
</p>
* Step 1 : 開始抓 Packet
* Step 2 : 在 cmd 上輸入 **`nslookup www.mit.edu`**
* Step 3 : 停止抓 Packet
<div class="r">
根據實驗完成畫面與內容完成 回答 Q11-Q15
</div>
</div>
----
#### Lab3-4
<div class="xmin-font">
11. What is the destination port for the DNS query message? What is the source port of DNS response message?
12. To what IP address is the DNS query message sent? Is this the IP address of your
default local DNS server?
13. Examine the DNS query message. What <span class="r">“Type”</span> of DNS query is it? Does the
query message contain any <span class="r">“answers”</span>?
14. Examine the DNS response message. How many “answers” are provided? What
do each of these answers contain?
15. Provide a screenshot.
</div>
----
#### Lab3-5
<div class="xmin-font">
<p>
使用 NSLOOKUP (2)
</p>
* Step 1 : 開始抓 Packet
* Step 2 : 在 cmd 上輸入 **`nslookup -type=NS www.mit.edu`**
* Step 3 : 停止抓 Packet
<div class="r">
根據實驗完成畫面與內容完成 回答 Q16-Q19
</div>
</div>
----
#### Lab3-5
<div class="xmin-font">
16. To what IP address is the DNS query message sent? Is this the IP address of your
default local DNS server?
17. Examine the DNS query message. What <span class="r">“Type”</span> of DNS query is it? Does the
query message contain any <span class="r">“answers”</span>?
18. Examine the DNS response message. What MIT nameservers does the response
message provide? Does this response message also provide the IP addresses of the
MIT namesers?
19. Provide a screenshot.
</div>
----
#### Lab3-6
<div class="xmin-font">
<p>
使用 NSLOOKUP (3)
</p>
* Step 1 : 開始抓 Packet
* Step 2 : 在 cmd 上輸入以下命令
- **`nslookup www.aiit.or.kr sun2cc.nccu.edu.tw`**
* Step 3 : 停止抓 Packet
<div class="r">
根據實驗完成畫面與內容完成 回答 Q20-Q23
</div>
</div>
----
#### Lab3-6
<div class="xmin-font">
20. To what IP address is the DNS query message sent? Is this the IP address of your
default local DNS server? If not, what does the IP address correspond to?
21. Examine the DNS query message. What <span class="r">“Type”</span> of DNS query is it? Does the
query message contain any <span class="r">“answers”</span>?
22. Examine the DNS response message. How many <span class="r">“answers”</span> are provided? What
does each of these answers contain?
23. Provide a screenshot.
</div>
---
## Lab4 : TCP
----
#### Lab4-1
<div class="xmin-font">
<p>
Capturing a bulk TCP transfer
</p>
* Step 1 : 打開瀏覽器,到下列網址,把檔案下載到桌面
- http://gaia.cs.umass.edu/wireshark-labs/alice.txt
* Step 2 : 打開分頁,進入下列網址
- http://gaia.cs.umass.edu/wireshark-labs/TCP-wireshark-file1.html
* Step 3 : 點擊 Browse 按鈕,選取剛剛下載的檔案。
- <span class="r"> 此時先不要按 Upload 按鈕</span>
* Step 4 : 打開 Wireshark ,開始抓 Packet
* Step 5 : 點擊 Upload 按鈕
* Step 6 : 停止抓 Packet
<div class="r">
根據實驗完成畫面與內容完成 回答 Q1-Q2
</div>
</div>
----
#### Lab4-1
<div class="xmin-font">
1. What is the IP address and TCP port number used by your client computer
(source) to transfer the file to gaia.cs.umass.edu?
2. What is the IP address of gaia.cs.umass.edu? On what port number is it sending
and receiving TCP segments for this connection?
</div>
----
#### Lab4-2
<div class="xmin-font">
<p>
TCP Basics
</p>
* Step 1 : 承 Lab4-1 實驗步驟
* Step 2 : 取消選取 Wireshark 選單的 `Analyze > Enabled Protocols` 中的 HTTP 選項
<div class="r">
根據實驗完成畫面與內容完成 回答 Q3-Q11
</div>
</div>
----
#### Lab4-2
<div class="xmin-font">
3. What is the sequence number of the TCP SYN segment that is used to initiate the
TCP connection between the client computer and gaia.cs.umass.edu? What is it
in the segment that identifies the segment as a SYN segment?
4. What is the sequence number of the SYNACK segment sent by gaia.cs.umass.edu
to the client computer in reply to the SYN? What is the value of the
Acknowledgement field in the SYNACK segment? How did gaia.cs.umass.edu
determine that value? What is it in the segment that identifies the segment as a
SYNACK segment?
</div>
----
#### Lab4-2
<div class="xmin-font">
5. What is the sequence number of the TCP segment containing the HTTP POST
command? Note that in order to find the POST command, you’ll need to dig into
the packet content field at the bottom of the Wireshark window, looking for a
segment with a “POST” within its DATA field.
</div>
----
#### Lab4-2
<div class="xmin-font">
6. Consider the TCP segment containing the HTTP POST as the first segment in the TCP connection.
* What are the sequence numbers of the first six segments in the TCP connection (including the segment containing the HTTP POST)?
* At what time was each segment sent?
* When was the ACK for each segment received? Given the difference between when each TCP segment was sent, and when its acknowledgement was received, what is the RTT value for each of the six segments?
* What is the EstimatedRTT value (see Section 3.5.3, page 242 in text) after the receipt of each ACK?
<div class="r">
Assume that the value of the
EstimatedRTT is equal to the measured RTT for the first segment, and then is
computed using the EstimatedRTT equation on page 242 for all subsequent
segments.
</div>
</div>
----
#### Lab4-2
<div class="xmin-font">
7. What is the length of each of the first six TCP segments?
8. What is the minimum amount of available buffer space advertised at the received
for the entire trace? Does the lack of receiver buffer space ever throttle the
sender?
9. Are there any retransmitted segments in the trace file? What did you check for (in
the trace) in order to answer this question?
</div>
----
#### Lab4-2
<div class="xmin-font">
10. How much data does the receiver typically acknowledge in an ACK? Can you
identify cases where the receiver is ACKing every other received segment (see
Table 3.2 on page 250 in the text)
11. What is the throughput (bytes transferred per unit time) for the TCP connection?
Explain how you calculated this value.
</div>
----
#### Lab4-3
<div class="xmin-font">
<p>
TCP congestion control
</p>
* Step 1 : 承 Lab4-1 步驟
* Step 2 : 選取一個 TCP Segment
* Step 3 : 點擊 Wireshark 選單的 `Statistics > TCP Stream Graph > Time-Sequence-Graph(Stevens)`
<div class="r">
根據實驗完成畫面與內容完成 回答 Q12
</div>
</div>
----
#### Lab4-3
<div class="xmin-font">
12. Use the Time-Sequence-Graph(Stevens) plotting tool to view the sequence
number versus time plot of segments being sent from the client to the
gaia.cs.umass.edu server. Can you identify where TCP’s slowstart phase begins
and ends, and where congestion avoidance takes over? Comment on ways in
which the measured data differs from the idealized behavior of TCP that we’ve
studied in the text.
</div>
---
## Lab5 : UDP
----
#### Lab5-1
<div class="xmin-font">
<p> UDP Basics</p>
* Step 1 : 打開 Wireshark ,開始抓 Packet
* Step 2 : 停止抓 Packet , 並在 `filter` 中輸入 `udp`
<div class="r">
根據實驗完成畫面與內容完成 回答 Q1-Q7
</div>
</div>
----
#### Lab5-1
<div class="xmin-font">
1. Select one UDP packet from your trace. From this packet, determine how many
fields there are in the UDP header.
2. By consulting the displayed information in Wireshark’s packet content field for this packet, determine the length (in bytes) of each of the UDP header fields.
3. The value in the Length field is the length of what? (You can consult the text for
this answer). Verify your claim with your captured UDP packet.
</div>
----
#### Lab5-1
<div class="xmin-font">
4. What is the maximum number of bytes that can be included in a UDP payload?
5. What is the largest possible source port number?
6. What is the protocol number for UDP? Give your answer in both hexadecimal and
decimal notation.
7. Examine a pair of UDP packets in which your host sends the first UDP packet and
the second UDP packet is a reply to this first UDP packet. (Hint: for a second
packet to be sent in response to a first packet, the sender of the first packet should
be the destination of the second packet). Describe the relationship between the
port numbers in the two packets.
</div>
---
## Lab6 : IP
----
#### 使用工具
* Windows : pingplotter
* http://www.pingplotter.com/
* Linux/Unix/MacOS : traceroute
----
#### Lab6-1
<div class="xmin-font">
<p> A look at the captured trace </p>
* Step 1 : 打開 Wireshark ,開始抓 Packet
* Step 2 (pingplotter) :
* target address 那設為 gaia.cs.umass.edu
* packet Size 設為 56
* Step 2 (traceroute) :
* `traceroute gaia.cs.umass.edu 56`
* Step 3 : 停止抓 Packet
<div class="r">
根據實驗完成畫面與內容完成 回答 Q1-Q9
</div>
</div>
----
#### Lab6-1
<div class="xmin-font">
1. Select the first ICMP Echo Request message sent by your computer, and expand
the Internet Protocol part of the packet in the packet details window. What is the IP address of your computer?
2. Within the IP packet header, what is the value in the upper layer protocol field?
3. How many bytes are in the IP header? How many bytes are in the payload of the IP datagram? Explain how you determined the number of payload bytes.
</div>
----
#### Lab6-1
<div class="xmin-font">
4. Has this IP datagram been fragmented? Explain how you determined whether or not the datagram has been fragmented.
5. Which fields in the IP datagram always change from one datagram to the next within this series of ICMP messages sent by your computer?
6. Which fields stay constant? Which of the fields must stay constant? Which fields must change? Why?
</div>
----
#### Lab6-1
<div class="xmin-font">
7. Describe the pattern you see in the values in the Identification field of the IP datagram
8. What is the value in the Identification field and the TTL field?
9. Do these values remain unchanged for all of the ICMP TTL-exceeded replies sent to your computer by the nearest (first hop) router? Why?
</div>
----
#### Lab6-2
<div class="xmin-font">
<p> Fragmentation </p>
* Step 1 : 打開 Wireshark ,開始抓 Packet
* Step 2 (pingplotter) :
* target address 那設為 gaia.cs.umass.edu
* packet Size 設為 2000
* Step 2 (traceroute) :
* `traceroute gaia.cs.umass.edu 2000`
* Step 3 : 停止抓 Packet
<div class="r">
根據實驗完成畫面與內容完成 回答 Q10-Q13
</div>
</div>
----
#### Lab6-2
<div class="xmin-font">
10. Find the first ICMP Echo Request message that was sent by your computer. Has that message been fragmented across more than one IP datagram?
11. Print out the first fragment of the fragmented IP datagram. What information in the IP header indicates that the datagram been fragmented? What information in the IP header indicates whether this is the first fragment versus a latter fragment? How long is this IP datagram?
</div>
----
#### Lab6-2
<div class="xmin-font">
12. Print out the second fragment of the fragmented IP datagram. What information in the IP header indicates that this is not the first datagram fragment? Are the more fragments? How can you tell?
13. What fields change in the IP header between the first and second fragment?
</div>
----
#### Lab6-3
<div class="xmin-font">
<p> More Fragmentation </p>
* Step 1 : 打開 Wireshark ,開始抓 Packet
* Step 2 (pingplotter) :
* target address 那設為 gaia.cs.umass.edu
* packet Size 設為 3500
* Step 2 (traceroute) :
* `traceroute gaia.cs.umass.edu 3500`
* Step 3 : 停止抓 Packet
<div class="r">
根據實驗完成畫面與內容完成 回答 Q14-Q15
</div>
</div>
----
#### Lab6-3
<div class="xmin-font">
14. How many fragments were created from the original datagram?
15. What fields change in the IP header among the fragments?
</div>
{"metaMigratedAt":"2023-06-15T14:45:00.662Z","metaMigratedFrom":"YAML","title":"Computer Network Slide","breaks":false,"slideOptions":"{\"theme\":\"white\"}","contributors":"[{\"id\":\"62ecf0a8-91b0-45ae-8220-dd76027791c6\",\"add\":29279,\"del\":7161}]"}