{"id":362,"date":"2011-10-12T13:29:20","date_gmt":"2011-10-12T13:29:20","guid":{"rendered":"http:\/\/gswce.net\/?page_id=362"},"modified":"2017-12-07T13:14:15","modified_gmt":"2017-12-07T13:14:15","slug":"communication-protocols","status":"publish","type":"page","link":"https:\/\/gswce.net\/?page_id=362","title":{"rendered":"Communication Protocols"},"content":{"rendered":"<p><a name=\"top\"><\/a>This page currently hosts the demos about communications protocols. There are a few more of these in the works (MAC protocols, spanning trees, Bellman-Ford and the token bucket algorithm). Any other ideas, please let me know.<\/p>\n<p>Click on the title or the picture to get the full demo.<\/p>\n<p>Currently on this page are the following:<\/p>\n<table border=\"2\">\n<tbody>\n<tr>\n<td>\n<ul>\n<li><a href=\"#FlowControl\">Flow Control Demo<\/a><\/li>\n<li><a href=\"#ErrorDetection\">Error Detection Schemes Demo<\/a><\/li>\n<li><a href=\"#IPv4_Quiz\">IPv4 Address Quiz<\/a><\/li>\n<li><a href=\"#IPv4Assignment\">IPv4 Address Assignment Demo<\/a><\/li>\n<li><a href=\"#Layers\">Protocol Layers Demo<\/a><\/li>\n<li><a href=\"#Routeing\">Routeing Demo<\/a><\/li>\n<li><a href=\"#SlidingWindows\">Sliding Windows Demo<\/a><\/li>\n<li><a href=\"#SwitchingComparison\">Switching Techniques Comparison Demo<\/a><\/li>\n<li><a href=\"#TokenBucket\">Token Bucket Algorithm Demo<\/a><\/li>\n<\/ul>\n<\/td>\n<td><a href=\"http:\/\/demos.gswce.net\/SlidingWindows\/SlidingWindowsTestPage.html\"><img decoding=\"async\" class=\"alignnone\" title=\"Sliding Windows Screenshot\" src=\"http:\/\/demos.gswce.net\/SlidingWindows\/SlidingWindows.gif\" alt=\"\" \/><\/a><\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<table border=\"2\">\n<tbody>\n<tr>\n<td><a name=\"FlowControl\"><\/a><\/p>\n<h3>Flow Control Demo<\/h3>\n<p>Not completely bug-free this one yet, but since I&#8217;ve started using this myself I thought I should put it up here. Hopefully what it does is reasonably self-explanatory, however note that the &#8220;Satellite&#8221; checkbox slows down the second link to simulate what happens on a satellite link. Proxies have infinite buffer space, routers have buffer space defined by the program.<\/td>\n<td><a href=\"http:\/\/demos.gswce.net\/FlowControl\/FlowControlTestPage.html\"><img decoding=\"async\" class=\"alignnone\" title=\"Click for the Flow Control Demo\" src=\"http:\/\/demos.gswce.net\/FlowControl\/FlowControl.png\" alt=\"\" width=\"250\" \/><\/a><br \/>\nIf you spot this one doing anything odd, please let me know.Video instructions and demo on request&#8230;<br \/>\n<a href=\"#top\">Back to top<\/a><\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<table border=\"2\">\n<tbody>\n<tr>\n<td><a name=\"ErrorDetection\"><\/a><\/p>\n<h3>Error Detection Schemes Demo<\/h3>\n<p>Illustrates the operation of parity, checksum, Internet-style checksums and the CRC. I like to use this one to demonstrate the effectiveness of the Internet checksum, and they challenge the students to work how much better they could do; then change to the CRC scheme, and just let them watch it carry on for minutes not suffering from any undetected errors at all. That gets their attention; and they get curious to wonder how CRCs work &#8211; and they need some motivation before they start on that bit of maths.<\/td>\n<td><a href=\"http:\/\/demos.gswce.net\/ErrorDetection\/ErrorDetectionTestPage.html\"><img decoding=\"async\" class=\"alignnone\" title=\"Click for the Error Detection Demo\" src=\"http:\/\/demos.gswce.net\/ErrorDetection\/ErrorDetection.gif\" alt=\"\" width=\"250\" \/><\/a><br \/>\nVideo instructions and demo on request&#8230;<br \/>\n<a href=\"#top\">Back to top<\/a><\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<table border=\"2\">\n<tbody>\n<tr>\n<td><a name=\"IPv4_Quiz\"><\/a><\/p>\n<h3>IPv4 Address Quiz<\/h3>\n<p>Demo to provide some fun in lectures, and some practice outside.<br \/>\nMostly obvious \u2013 but note you can use the right and left mouse buttons to copy an IP address from either the question or a possible answer into the hexadecimal to binary convertors at the bottom of the screen. You can also edit the numbers in the hexadecimal and binary blocks and the other box will be updated automatically.<\/td>\n<td><a href=\"http:\/\/demos.gswce.net\/IPv4_Quiz\/IPv4_QuizTestPage.html\"><img decoding=\"async\" class=\"alignnone\" title=\"Click for the IPv4 Address Quiz\" src=\"http:\/\/demos.gswce.net\/IPv4_Quiz\/IPv4_Quiz.gif\" alt=\"\" width=\"250\" \/><\/a><br \/>\nVideo instructions and demo on request&#8230;<br \/>\n<a href=\"#top\">Back to top<\/a><\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<table border=\"2\">\n<tbody>\n<tr>\n<td><a name=\"IPv4Assignment\"><\/a><\/p>\n<h3>IPv4 Address Assignment Demo<\/h3>\n<p>Demo to provide some practice in assignment blocks of IPv4 addresses, and to check answers that students have come up with to tutorial problems. Check one of the checkboxes next to the buttons to turn on a new subnet; then you can drag the block of addresses around. Each row of space is 256 addresses (a \/24 block).<br \/>\nIf you double-click on the subnet\u2019s button, you can enter the number of addresses required for that subnet, and then the program will warn you if there isn\u2019t enough space assigned.<\/td>\n<td><a href=\"http:\/\/demos.gswce.net\/IPv4Assignment\/IPv4AssignmentTestPage.html\"><img decoding=\"async\" class=\"alignnone\" title=\"Click for the IPv4 Assignment Demo\" src=\"http:\/\/demos.gswce.net\/IPv4Assignment\/IPv4Assignment.gif\" alt=\"\" width=\"250\" \/><\/a><br \/>\nVideo instructions and demo on request&#8230;<br \/>\n<a href=\"#top\">Back to top<\/a><\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<table border=\"2\">\n<tbody>\n<tr>\n<td><a name=\"Layers\"><\/a><\/p>\n<h3>Protocol Layers Demo<\/h3>\n<p>Mostly obvious, but there\u2019s a bit more going on under the hood that might be immediately obvious. Firstly \u2013 right click on any packet and it will stop, left click and it will disappear. Reliable layers also re-order packets, and have a window size of seven packets. Also, when paused you can put the mouse over a header and get a description of what it is.<\/td>\n<td><a href=\"http:\/\/demos.gswce.net\/Layers\/LayersTestPage.html\"><img decoding=\"async\" class=\"alignnone\" title=\"Click for the Layers Demo\" src=\"http:\/\/demos.gswce.net\/Layers\/Layers.gif\" alt=\"\" width=\"250\" \/><\/a><br \/>\nVideo instructions and demo on request&#8230;<br \/>\n<a href=\"#top\">Back to top<\/a><\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<table border=\"2\">\n<tbody>\n<tr>\n<td><a name=\"Routeing\"><\/a><\/p>\n<h3>Routeing Demo<\/h3>\n<p>This is a slightly more advanced version of one of the original VB demos about routeing. Originally just for demonstrating the operation of the Bellman-Ford algorithm, I&#8217;ve also added reverse path forwarding so I can use it for multicasting as well. Note the colours on the packets: in order from the front to the back they are MAC destination, MAC source, IP destination, IP source, data type (routeing packets are pink, broadcast packets are white).<\/td>\n<td><a href=\"http:\/\/demos.gswce.net\/Routeing\/RouteingTestPage.html\"><img decoding=\"async\" class=\"alignnone\" title=\"Click for the Routeing Demo\" src=\"http:\/\/demos.gswce.net\/Routeing\/Routeing.png\" alt=\"\" width=\"250\" \/><\/a><br \/>\nDouble-click on the routers to bring up the routeing tables, and left or right click on the costs of the links to change them. Packets are sent by clicking on the source, then dragging the gray line that appears to the destination.Video instructions and demo on request&#8230;<br \/>\n<a href=\"#top\">Back to top<\/a><\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<table border=\"2\">\n<tbody>\n<tr>\n<td><a name=\"SlidingWindows\"><\/a><\/p>\n<h3>Sliding Windows Demo<\/h3>\n<p>Another one with rather more going on under the hood than might be obvious at first sight. It can do some basic TCP congestion control stuff as well, implementing slow-start, delayed acknowledgements and fast re-transmit. Put the mouse over a pane in the window for more details; and you can kill packets by double-clicking on them, and pause and re-start them with a single click.<\/td>\n<td><a href=\"http:\/\/demos.gswce.net\/SlidingWindows\/SlidingWindowsTestPage.html\"><img decoding=\"async\" class=\"alignnone\" title=\"Click for the Sliding Windows Demo\" src=\"http:\/\/demos.gswce.net\/SlidingWindows\/SlidingWindows.gif\" alt=\"\" width=\"250\" \/><\/a><br \/>\nVideo instructions and demo on request&#8230;<br \/>\n<a href=\"#top\">Back to top<\/a><\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<table border=\"2\">\n<tbody>\n<tr>\n<td><a name=\"SwitchingComparison\"><\/a><\/p>\n<h3>Switching Comparison Demo<\/h3>\n<p>Demonstrates the difference between message, circuit and packet switching, and shows the situations in which each of the them is the best choice. Quite basic this one, and needs a bit of description while it\u2019s running.<\/td>\n<td><a href=\"http:\/\/demos.gswce.net\/SwitchingComparison\/SwitchingComparisonTestPage.html\"><img decoding=\"async\" class=\"alignnone\" title=\"Click for the Switching Comparison Demo\" src=\"http:\/\/demos.gswce.net\/SwitchingComparison\/SwitchingComparison.gif\" alt=\"\" width=\"250\" \/><\/a><br \/>\nVideo instructions and demo on request&#8230;<br \/>\n<a href=\"#top\">Back to top<\/a><\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<table border=\"2\">\n<tbody>\n<tr>\n<td><a name=\"TokenBucket\"><\/a><\/p>\n<h3>Token Bucket Algorithm Demo<\/h3>\n<p>Demonstrates the token bucket algorithm. This is very much a work in progress, since it occurs to me that with not much modification this one could be used to demonstrate a lot of effects in queueing theory, and I&#8217;m due to start teaching that subject again next year. Watch this space for updates.<\/td>\n<td><a href=\"http:\/\/demos.gswce.net\/TokenBucket\/TokenBucketTestPage.html\"><img decoding=\"async\" class=\"alignnone\" title=\"Click for the Token Bucket Demo\" src=\"http:\/\/demos.gswce.net\/TokenBucket\/TokenBucket.gif\" alt=\"\" width=\"250\" \/><\/a><br \/>\nVideo instructions and demo on request&#8230;<br \/>\n<a href=\"#top\">Back to top<\/a><\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n","protected":false},"excerpt":{"rendered":"<p>This page currently hosts the demos about communications protocols. There are a few more of these in the works (MAC protocols, spanning trees, Bellman-Ford and the token bucket algorithm). Any other ideas, please let me know. Click on the title &hellip; <a href=\"https:\/\/gswce.net\/?page_id=362\">Continue reading <span class=\"meta-nav\">&rarr;<\/span><\/a><\/p>\n","protected":false},"author":1,"featured_media":0,"parent":122,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"","meta":{"footnotes":""},"_links":{"self":[{"href":"https:\/\/gswce.net\/index.php?rest_route=\/wp\/v2\/pages\/362"}],"collection":[{"href":"https:\/\/gswce.net\/index.php?rest_route=\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/gswce.net\/index.php?rest_route=\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/gswce.net\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/gswce.net\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=362"}],"version-history":[{"count":21,"href":"https:\/\/gswce.net\/index.php?rest_route=\/wp\/v2\/pages\/362\/revisions"}],"predecessor-version":[{"id":818,"href":"https:\/\/gswce.net\/index.php?rest_route=\/wp\/v2\/pages\/362\/revisions\/818"}],"up":[{"embeddable":true,"href":"https:\/\/gswce.net\/index.php?rest_route=\/wp\/v2\/pages\/122"}],"wp:attachment":[{"href":"https:\/\/gswce.net\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=362"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}