<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
	<id>https://homeostasis.scs.carleton.ca/wiki/index.php?action=history&amp;feed=atom&amp;title=WebFund_2024F_Lecture_2</id>
	<title>WebFund 2024F Lecture 2 - Revision history</title>
	<link rel="self" type="application/atom+xml" href="https://homeostasis.scs.carleton.ca/wiki/index.php?action=history&amp;feed=atom&amp;title=WebFund_2024F_Lecture_2"/>
	<link rel="alternate" type="text/html" href="https://homeostasis.scs.carleton.ca/wiki/index.php?title=WebFund_2024F_Lecture_2&amp;action=history"/>
	<updated>2026-04-22T19:20:51Z</updated>
	<subtitle>Revision history for this page on the wiki</subtitle>
	<generator>MediaWiki 1.42.1</generator>
	<entry>
		<id>https://homeostasis.scs.carleton.ca/wiki/index.php?title=WebFund_2024F_Lecture_2&amp;diff=24661&amp;oldid=prev</id>
		<title>Soma: /* Resources */</title>
		<link rel="alternate" type="text/html" href="https://homeostasis.scs.carleton.ca/wiki/index.php?title=WebFund_2024F_Lecture_2&amp;diff=24661&amp;oldid=prev"/>
		<updated>2024-09-10T19:07:40Z</updated>

		<summary type="html">&lt;p&gt;&lt;span dir=&quot;auto&quot;&gt;&lt;span class=&quot;autocomment&quot;&gt;Resources&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;table style=&quot;background-color: #fff; color: #202122;&quot; data-mw=&quot;interface&quot;&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;tr class=&quot;diff-title&quot; lang=&quot;en&quot;&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;← Older revision&lt;/td&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;Revision as of 19:07, 10 September 2024&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot; id=&quot;mw-diff-left-l237&quot;&gt;Line 237:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Line 237:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;* [https://en.wikipedia.org/wiki/Router_(computing) Router]&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;* [https://en.wikipedia.org/wiki/Router_(computing) Router]&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;* [https://en.wikipedia.org/wiki/Ethernet Ethernet]&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;* [https://en.wikipedia.org/wiki/Ethernet Ethernet]&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-deleted&quot;&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;* [https://en.wikipedia.org/wiki/Ethernet_frame Ethernet frame]&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;* [https://en.wikipedia.org/wiki/Internet_Protocol Internet Protocol]&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;* [https://en.wikipedia.org/wiki/Internet_Protocol Internet Protocol]&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;* [https://en.wikipedia.org/wiki/Transmission_Control_Protocol TCP]&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;* [https://en.wikipedia.org/wiki/Transmission_Control_Protocol TCP]&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/table&gt;</summary>
		<author><name>Soma</name></author>
	</entry>
	<entry>
		<id>https://homeostasis.scs.carleton.ca/wiki/index.php?title=WebFund_2024F_Lecture_2&amp;diff=24660&amp;oldid=prev</id>
		<title>Soma: /* Notes */</title>
		<link rel="alternate" type="text/html" href="https://homeostasis.scs.carleton.ca/wiki/index.php?title=WebFund_2024F_Lecture_2&amp;diff=24660&amp;oldid=prev"/>
		<updated>2024-09-10T19:07:11Z</updated>

		<summary type="html">&lt;p&gt;&lt;span dir=&quot;auto&quot;&gt;&lt;span class=&quot;autocomment&quot;&gt;Notes&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;table style=&quot;background-color: #fff; color: #202122;&quot; data-mw=&quot;interface&quot;&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;tr class=&quot;diff-title&quot; lang=&quot;en&quot;&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;← Older revision&lt;/td&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;Revision as of 19:07, 10 September 2024&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot; id=&quot;mw-diff-left-l76&quot;&gt;Line 76:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Line 76:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;     - like a &amp;quot;postcard&amp;quot;&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;     - like a &amp;quot;postcard&amp;quot;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;     - header has &amp;quot;metadata&amp;quot; - where information is going to, where it is from, length, etc&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;     - header has &amp;quot;metadata&amp;quot; - where information is going to, where it is from, length, etc&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-deleted&quot;&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;      CORRECTION: no length in ethernet packets&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;     - payload is the contents to be communicated&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;     - payload is the contents to be communicated&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/table&gt;</summary>
		<author><name>Soma</name></author>
	</entry>
	<entry>
		<id>https://homeostasis.scs.carleton.ca/wiki/index.php?title=WebFund_2024F_Lecture_2&amp;diff=24659&amp;oldid=prev</id>
		<title>Soma at 19:01, 10 September 2024</title>
		<link rel="alternate" type="text/html" href="https://homeostasis.scs.carleton.ca/wiki/index.php?title=WebFund_2024F_Lecture_2&amp;diff=24659&amp;oldid=prev"/>
		<updated>2024-09-10T19:01:51Z</updated>

		<summary type="html">&lt;p&gt;&lt;/p&gt;
&lt;table style=&quot;background-color: #fff; color: #202122;&quot; data-mw=&quot;interface&quot;&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;tr class=&quot;diff-title&quot; lang=&quot;en&quot;&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;← Older revision&lt;/td&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;Revision as of 19:01, 10 September 2024&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot; id=&quot;mw-diff-left-l228&quot;&gt;Line 228:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Line 228:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;  - so, how do you know bad guys aren&amp;#039;t getting in the middle? and how do you stop them from doing damage?&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;  - so, how do you know bad guys aren&amp;#039;t getting in the middle? and how do you stop them from doing damage?&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;lt;/pre&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;lt;/pre&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-deleted&quot;&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-deleted&quot;&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;==Resources==&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-deleted&quot;&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-deleted&quot;&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;Wikipedia has excellent articles on the basics of networking that also link to great resources:&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-deleted&quot;&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-deleted&quot;&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;* [https://en.wikipedia.org/wiki/Local_area_network Local Area Networks]&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-deleted&quot;&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;* [https://en.wikipedia.org/wiki/Router_(computing) Router]&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-deleted&quot;&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;* [https://en.wikipedia.org/wiki/Ethernet Ethernet]&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-deleted&quot;&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;* [https://en.wikipedia.org/wiki/Internet_Protocol Internet Protocol]&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-deleted&quot;&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;* [https://en.wikipedia.org/wiki/Transmission_Control_Protocol TCP]&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-deleted&quot;&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;* [https://en.wikipedia.org/wiki/User_Datagram_Protocol UDP]&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-deleted&quot;&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;* [https://en.wikipedia.org/wiki/Transport_Layer_Security TLS]&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-deleted&quot;&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;* [https://en.wikipedia.org/wiki/QUIC QUIC]&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-deleted&quot;&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-deleted&quot;&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;This material is all beyond the scope of this class, but understanding these technologies will help you understand the technical context around the web.&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/table&gt;</summary>
		<author><name>Soma</name></author>
	</entry>
	<entry>
		<id>https://homeostasis.scs.carleton.ca/wiki/index.php?title=WebFund_2024F_Lecture_2&amp;diff=24657&amp;oldid=prev</id>
		<title>Soma: Created page with &quot;==Video==  Video from the lecture given on September 10, 2024 is now available: * [https://homeostasis.scs.carleton.ca/~soma/webfund-2024f/lectures/comp2406-2024f-lec02-20240910.m4v video] * [https://homeostasis.scs.carleton.ca/~soma/webfund-2024f/lectures/comp2406-2024f-lec02-20240910.cc.vtt auto-generated captions]  ==Notes==  &lt;pre&gt; Lecture 2 ---------  * Tutorials are released on Thursdays, may be available before but may note be finalized   (Tutorial will say whether...&quot;</title>
		<link rel="alternate" type="text/html" href="https://homeostasis.scs.carleton.ca/wiki/index.php?title=WebFund_2024F_Lecture_2&amp;diff=24657&amp;oldid=prev"/>
		<updated>2024-09-10T18:33:38Z</updated>

		<summary type="html">&lt;p&gt;Created page with &amp;quot;==Video==  Video from the lecture given on September 10, 2024 is now available: * [https://homeostasis.scs.carleton.ca/~soma/webfund-2024f/lectures/comp2406-2024f-lec02-20240910.m4v video] * [https://homeostasis.scs.carleton.ca/~soma/webfund-2024f/lectures/comp2406-2024f-lec02-20240910.cc.vtt auto-generated captions]  ==Notes==  &amp;lt;pre&amp;gt; Lecture 2 ---------  * Tutorials are released on Thursdays, may be available before but may note be finalized   (Tutorial will say whether...&amp;quot;&lt;/p&gt;
&lt;p&gt;&lt;b&gt;New page&lt;/b&gt;&lt;/p&gt;&lt;div&gt;==Video==&lt;br /&gt;
&lt;br /&gt;
Video from the lecture given on September 10, 2024 is now available:&lt;br /&gt;
* [https://homeostasis.scs.carleton.ca/~soma/webfund-2024f/lectures/comp2406-2024f-lec02-20240910.m4v video]&lt;br /&gt;
* [https://homeostasis.scs.carleton.ca/~soma/webfund-2024f/lectures/comp2406-2024f-lec02-20240910.cc.vtt auto-generated captions]&lt;br /&gt;
&lt;br /&gt;
==Notes==&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
Lecture 2&lt;br /&gt;
---------&lt;br /&gt;
&lt;br /&gt;
* Tutorials are released on Thursdays, may be available before but may note be finalized&lt;br /&gt;
  (Tutorial will say whether they are finalized as well)&lt;br /&gt;
&lt;br /&gt;
* Same for assignments&lt;br /&gt;
&lt;br /&gt;
* Tutorials are due when the assignment associated with them are due...but remember, you have to get checked off by a TA in their office hours or in a tutorial. You can&amp;#039;t just email or message them with your answers. So don&amp;#039;t put it off. They won&amp;#039;t make extra office hours. (You can talk to a TA virtually, but it has to at least be a call.)&lt;br /&gt;
&lt;br /&gt;
(Will be posting office hours soon.)&lt;br /&gt;
&lt;br /&gt;
* Lecture quiz for today will be posted this afternoon&lt;br /&gt;
  - you&amp;#039;ll have a week to complete&lt;br /&gt;
  - make sure you don&amp;#039;t get too far behind&lt;br /&gt;
  - will be pretty simple&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* Assignments will be released at least a week before they are due&lt;br /&gt;
  - they are based on the tutorials, so if you understand them the assignment shouldn&amp;#039;t be too hard&lt;br /&gt;
&lt;br /&gt;
My wiki is at https://homeostasis.scs.carleton.ca/wiki&lt;br /&gt;
&lt;br /&gt;
For software, we&amp;#039;re going to be using openstack, so you don&amp;#039;t need anything&lt;br /&gt;
 - but basically we&amp;#039;re using Deno, you can install that on your machine to use it.&lt;br /&gt;
&lt;br /&gt;
You can get checked off for tutorials by going to tutorials and attending for 1-1.5 hours. However, this isn&amp;#039;t necessarily enough time to understand the material. You&amp;#039;ll need to spend the time you need to learn, just as you do in any class.&lt;br /&gt;
&lt;br /&gt;
Can you use a VM on your own machine?&lt;br /&gt;
 - yes, but we will be supporting and recommending openstack&lt;br /&gt;
&lt;br /&gt;
Why no final project?&lt;br /&gt;
 - can be done without understanding material thanks to modern tools&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The Internet&lt;br /&gt;
------------&lt;br /&gt;
 - because the web runs on the Internet&lt;br /&gt;
 - can&amp;#039;t understand its design choices without understanding the Internet&lt;br /&gt;
 - and I don&amp;#039;t think you all have learned about it at a technical level&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
When we talk about the Internet, we&amp;#039;re talking about a network of networks&lt;br /&gt;
 - what is a network then? in CS terms, just computers talking to each other&lt;br /&gt;
&lt;br /&gt;
The original Ethernet was pretty simple&lt;br /&gt;
 - a wire connecting lots of computers&lt;br /&gt;
 - all computers could &amp;quot;listen&amp;quot; to the wire always&lt;br /&gt;
 - any computer could start &amp;quot;speaking&amp;quot; over the wire at any time&lt;br /&gt;
 - but if two computers &amp;quot;talked&amp;quot; at the same time, jibberish&lt;br /&gt;
 - so they had to take turns&lt;br /&gt;
    - if someone else was speaking, they would wait a random amount of time before speaking again (if there was a &amp;quot;collision&amp;quot;)&lt;br /&gt;
    - if problems again, would wait exponentially longer&lt;br /&gt;
&lt;br /&gt;
Xerox PARC made ethernet, and object oriented programming (smalltalk), and GUIs, and laser printers&lt;br /&gt;
&lt;br /&gt;
Now, when we say computers &amp;quot;speak&amp;quot; to each other, what is the method of that conversation (the &amp;quot;protocol&amp;quot;)?&lt;br /&gt;
 - ethernet is really a protocol for how computers can speak to each other&lt;br /&gt;
 - a &amp;quot;low level&amp;quot; protocol, in that it is designed to work one layer up from a physical communication medium&lt;br /&gt;
&lt;br /&gt;
Originally, ethernet was just for wires. But now the ethernet protocol is used for fiber optic cables and for wireless communication&lt;br /&gt;
 - Wi-Fi uses ethernet-type messages, just over microwaves&lt;br /&gt;
&lt;br /&gt;
Ethernet is a protocol for how to send and receive ethernet packets&lt;br /&gt;
 - a packet is a fixed-sized unit of communication&lt;br /&gt;
 - has a header and payload&lt;br /&gt;
    - like a &amp;quot;postcard&amp;quot;&lt;br /&gt;
    - header has &amp;quot;metadata&amp;quot; - where information is going to, where it is from, length, etc&lt;br /&gt;
    - payload is the contents to be communicated&lt;br /&gt;
&lt;br /&gt;
Standard ethernet packets are 1500 bytes (I think)&lt;br /&gt;
&lt;br /&gt;
So to send data to another computer with ethernet, you have to&lt;br /&gt;
 - figure out the ethernet address of the destination computer&lt;br /&gt;
 - convert data you want to send into a series of packets&lt;br /&gt;
 - send the packets&lt;br /&gt;
&lt;br /&gt;
To receive, you just listen in for packets with your address&lt;br /&gt;
&lt;br /&gt;
Traditionally, ethernet was a broadcast protocol&lt;br /&gt;
 - all computers saw all packets being transmitted&lt;br /&gt;
&lt;br /&gt;
Ethernet is great for connecting local computers, i.e., making a local area network (LAN)&lt;br /&gt;
But it doesn&amp;#039;t scale&lt;br /&gt;
 - quickly networks get too big&lt;br /&gt;
 - so need a way to connect networks&lt;br /&gt;
&lt;br /&gt;
For more: https://en.wikipedia.org/wiki/Local_area_network&lt;br /&gt;
&lt;br /&gt;
The Internet is, in effect, a way of connecting multiple &amp;quot;ethernet&amp;quot; networks together&lt;br /&gt;
 (actually, can be any technology, and there are lots, but mostly now they are ethernet-like)&lt;br /&gt;
&lt;br /&gt;
(There are lots of privacy and security issues that come up, we aren&amp;#039;t going to discuss now.)&lt;br /&gt;
&lt;br /&gt;
How do we connect networks to each other? Need an interchange language, a protocol that everyone understands&lt;br /&gt;
&lt;br /&gt;
That&amp;#039;s the Internet Protocol (IP)&lt;br /&gt;
&lt;br /&gt;
All it is, is a specification for packets: IP packets&lt;br /&gt;
&lt;br /&gt;
IP packets have metadata and data&lt;br /&gt;
 - metadata: source, destination, length, checksum (simple hash)&lt;br /&gt;
 - plus data&lt;br /&gt;
&lt;br /&gt;
IP packets sound similar to ethernet packets right?&lt;br /&gt;
 - but have different namespaces for sources and destinations&lt;br /&gt;
 &lt;br /&gt;
So what is actually transmitted are ethernet packets that contain IP packets&lt;br /&gt;
&lt;br /&gt;
Isn&amp;#039;t that wasteful? Why not just use one or the other?&lt;br /&gt;
 - low-level network hardware doesn&amp;#039;t understand IP packets&lt;br /&gt;
 - and ethernet packets only make sense in a LAN&lt;br /&gt;
&lt;br /&gt;
Your computer wants to send data to Google&lt;br /&gt;
 - figure out Google&amp;#039;s IP address&lt;br /&gt;
 - generate IP packets for data to be sent to Google&lt;br /&gt;
 - encapuslate IP packets into ethernet packets to local router&lt;br /&gt;
 - send packets to router&lt;br /&gt;
&lt;br /&gt;
So, what is this router?&lt;br /&gt;
 - a computer with a connection to multiple networks (at least 2)&lt;br /&gt;
&lt;br /&gt;
So your computer would set the local router as the ethernet destination,&lt;br /&gt;
 and the router would send the packets along to another router, and so on,&lt;br /&gt;
 until it gets to a Google computer&lt;br /&gt;
&lt;br /&gt;
routers are like sorting centers for shipping&lt;br /&gt;
&lt;br /&gt;
By the way, this tech was all originally developed in one form or another for phone networks&lt;br /&gt;
 - and they used to charge for long-distance messages (outside of the &amp;quot;LAN&amp;quot; of a city)&lt;br /&gt;
&lt;br /&gt;
You&amp;#039;ll notice a few issues&lt;br /&gt;
 - how long do packets take to get somewhere?&lt;br /&gt;
 - what if they get lost or damaged in transit?&lt;br /&gt;
 - what if they arrive in a different order?&lt;br /&gt;
&lt;br /&gt;
order is easy, just number the packets&lt;br /&gt;
&lt;br /&gt;
lost or damaged, need to be resent by origin&lt;br /&gt;
 - hopefully it still has a copy&lt;br /&gt;
&lt;br /&gt;
how long?&lt;br /&gt;
 - telecom networks had time arrival guarantees&lt;br /&gt;
 - Internet is mostly &amp;quot;best effort&amp;quot;&lt;br /&gt;
    - we&amp;#039;ll try, but no guarantees&lt;br /&gt;
&lt;br /&gt;
There is this notion of &amp;quot;QoS&amp;quot; that gets applied&lt;br /&gt;
 - quality of service&lt;br /&gt;
&lt;br /&gt;
But that is always a preference, almost never a guarantee&lt;br /&gt;
&lt;br /&gt;
This is why sometimes your Internet connection can be amazing and then other times it is crap&lt;br /&gt;
 - mostly because other people are using the network too much!&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Note the Internet was designed for texting, email, sending files, NOT for interactive video! Amazing that it works! (But same tech underneath!)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
What if I just want to send a continuous stream of data&lt;br /&gt;
 - need multiple packets&lt;br /&gt;
 - in a fixed order&lt;br /&gt;
 - with dropped/damaged packets being retransmitted&lt;br /&gt;
&lt;br /&gt;
TCP (transmission control protocol), that&amp;#039;s the protocol ON TOP of IP&lt;br /&gt;
 - so you have TCP inside IP inside Ethernet&lt;br /&gt;
&lt;br /&gt;
UDP is also used, just IP packets with a port (port denotes which program gets the packet), no provision for retransmission or order, up to the program receiving the data&lt;br /&gt;
&lt;br /&gt;
What is the web in all of this?&lt;br /&gt;
 - another protocol, HTTP&lt;br /&gt;
&lt;br /&gt;
So we send&lt;br /&gt;
&lt;br /&gt;
 - HTTP inside a TCP stream&lt;br /&gt;
 - TCP stream inside IP packets&lt;br /&gt;
 - IP packets inside ethernet packets&lt;br /&gt;
&lt;br /&gt;
Actually for the modern web&lt;br /&gt;
&lt;br /&gt;
 - HTTP inside TLS stream&lt;br /&gt;
 - TLS stream inside a TCP stream&lt;br /&gt;
 - TCP stream inside IP packets&lt;br /&gt;
 - IP packets inside ethernet packets&lt;br /&gt;
&lt;br /&gt;
TLS (was SSL) adds encryption and authentication (&amp;quot;secure&amp;quot; web pages)&lt;br /&gt;
 - Transport Layer Security&lt;br /&gt;
&lt;br /&gt;
QUIC is HTTP + TLS + TCP in functionality (well, works with HTTP/3)&lt;br /&gt;
 - used by Google and some other folks to make web (and ads) faster&lt;br /&gt;
&lt;br /&gt;
HTTPS is just HTTP over TLS&lt;br /&gt;
&lt;br /&gt;
Cryptography != Security&lt;br /&gt;
 - lots to say, ask me later&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
TLS &amp;quot;guarantees&amp;quot;&lt;br /&gt;
 - data not modified in transit by unauthorized parties&lt;br /&gt;
 - know the identity of source of data&lt;br /&gt;
 - data is secret, not known to outside parties&lt;br /&gt;
&lt;br /&gt;
But that&amp;#039;s it&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
HTTPS was created to allow credit cards to be sent over the Internet (web)&lt;br /&gt;
Now HTTPS is being used for everything&lt;br /&gt;
&lt;br /&gt;
Remember that HTTP was a protocol designed to send and receive HTML documents&lt;br /&gt;
 - HyperText Transfer protocol versus HyperText Markup Language&lt;br /&gt;
&lt;br /&gt;
That&amp;#039;s all the web was originally, HTTP and HTML (running on top of TCP, IP, and Ethernet). But now it is that plus much more.&lt;br /&gt;
&lt;br /&gt;
IP, TCP, Ethernet date from the early to mid 1970&amp;#039;s. HTTP and HTML are from the early 1990&amp;#039;s.&lt;br /&gt;
  - the Internet was much more than the Web&lt;br /&gt;
  - but the Web has consumed everything&lt;br /&gt;
&lt;br /&gt;
Why is security such a big issue on the web?&lt;br /&gt;
 - any computer talking to any computer, about everything&lt;br /&gt;
 - so, how do you know bad guys aren&amp;#039;t getting in the middle? and how do you stop them from doing damage?&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;/div&gt;</summary>
		<author><name>Soma</name></author>
	</entry>
</feed>