Dangling hw2 and hw3 up to ex4

This commit is contained in:
Claudio Maggioni 2020-05-30 16:27:32 +02:00
parent 56edd49b62
commit ef58c212dc
6 changed files with 622 additions and 5 deletions

View File

@ -8,9 +8,6 @@
* value of the receiver disconnection timeout.
*/
package impl;
import transport.Receiver;
import transport.TimeoutAction;

View File

@ -8,8 +8,6 @@
* fixed window.
*/
package impl;
import transport.TimeoutAction;
import java.util.*;

8
hw2/src/impl/README Normal file
View File

@ -0,0 +1,8 @@
Go back N - T
Computer Networking Asignment 2
Claudio Maggioni (2020)
No external sources other than class material were used to do the assignment.
The solution is complete.
No special build instructions are required to use the classes.

569
hw3/.gitignore vendored Normal file
View File

@ -0,0 +1,569 @@
## Core latex/pdflatex auxiliary files:
*.aux
*.lof
*.log
*.lot
*.fls
*.out
*.toc
*.fmt
*.fot
*.cb
*.cb2
.*.lb
## Intermediate documents:
*.dvi
*.xdv
*-converted-to.*
# these rules might exclude image files for figures etc.
# *.ps
# *.eps
# *.pdf
## Generated if empty string is given at "Please type another file name for output:"
.pdf
## Bibliography auxiliary files (bibtex/biblatex/biber):
*.bbl
*.bcf
*.blg
*-blx.aux
*-blx.bib
*.run.xml
## Build tool auxiliary files:
*.fdb_latexmk
*.synctex
*.synctex(busy)
*.synctex.gz
*.synctex.gz(busy)
*.pdfsync
## Build tool directories for auxiliary files
# latexrun
latex.out/
## Auxiliary and intermediate files from other packages:
# algorithms
*.alg
*.loa
# achemso
acs-*.bib
# amsthm
*.thm
# beamer
*.nav
*.pre
*.snm
*.vrb
# changes
*.soc
# comment
*.cut
# cprotect
*.cpt
# elsarticle (documentclass of Elsevier journals)
*.spl
# endnotes
*.ent
# fixme
*.lox
# feynmf/feynmp
*.mf
*.mp
*.t[1-9]
*.t[1-9][0-9]
*.tfm
#(r)(e)ledmac/(r)(e)ledpar
*.end
*.?end
*.[1-9]
*.[1-9][0-9]
*.[1-9][0-9][0-9]
*.[1-9]R
*.[1-9][0-9]R
*.[1-9][0-9][0-9]R
*.eledsec[1-9]
*.eledsec[1-9]R
*.eledsec[1-9][0-9]
*.eledsec[1-9][0-9]R
*.eledsec[1-9][0-9][0-9]
*.eledsec[1-9][0-9][0-9]R
# glossaries
*.acn
*.acr
*.glg
*.glo
*.gls
*.glsdefs
*.lzo
*.lzs
# uncomment this for glossaries-extra (will ignore makeindex's style files!)
# *.ist
# gnuplottex
*-gnuplottex-*
# gregoriotex
*.gaux
*.gtex
# htlatex
*.4ct
*.4tc
*.idv
*.lg
*.trc
*.xref
# hyperref
*.brf
# knitr
*-concordance.tex
# TODO Uncomment the next line if you use knitr and want to ignore its generated tikz files
# *.tikz
*-tikzDictionary
# listings
*.lol
# luatexja-ruby
*.ltjruby
# makeidx
*.idx
*.ilg
*.ind
# minitoc
*.maf
*.mlf
*.mlt
*.mtc[0-9]*
*.slf[0-9]*
*.slt[0-9]*
*.stc[0-9]*
# minted
_minted*
*.pyg
# morewrites
*.mw
# nomencl
*.nlg
*.nlo
*.nls
# pax
*.pax
# pdfpcnotes
*.pdfpc
# sagetex
*.sagetex.sage
*.sagetex.py
*.sagetex.scmd
# scrwfile
*.wrt
# sympy
*.sout
*.sympy
sympy-plots-for-*.tex/
# pdfcomment
*.upa
*.upb
# pythontex
*.pytxcode
pythontex-files-*/
# tcolorbox
*.listing
# thmtools
*.loe
# TikZ & PGF
*.dpth
*.md5
*.auxlock
# todonotes
*.tdo
# vhistory
*.hst
*.ver
# easy-todo
*.lod
# xcolor
*.xcp
# xmpincl
*.xmpi
# xindy
*.xdy
# xypic precompiled matrices and outlines
*.xyc
*.xyd
# endfloat
*.ttt
*.fff
# Latexian
TSWLatexianTemp*
## Editors:
# WinEdt
*.bak
*.sav
# Texpad
.texpadtmp
# LyX
*.lyx~
# Kile
*.backup
# gummi
.*.swp
# KBibTeX
*~[0-9]*
# TeXnicCenter
*.tps
# auto folder when using emacs and auctex
./auto/*
*.el
# expex forward references with \gathertags
*-tags.tex
# standalone packages
*.sta
# Makeindex log files
*.lpz
# xwatermark package
*.xwm
# REVTeX puts footnotes in the bibliography by default, unless the nofootinbib
# option is specified. Footnotes are the stored in a file with suffix Notes.bib.
# Uncomment the next line to have this generated file ignored.
#*Notes.bib

BIN
hw3/hw3.pdf Normal file

Binary file not shown.

45
hw3/hw3.tex Normal file
View File

@ -0,0 +1,45 @@
\documentclass[12pt,a4paper]{article}
\usepackage[utf8]{inputenc} \usepackage[margin=2cm]{geometry}
\usepackage{amstext} \usepackage{amsmath} \usepackage{array}
\newcommand{\lra}{\Leftrightarrow}
\title{Howework 3 -- Computer Networking}
\author{Claudio Maggioni}
\begin{document} \maketitle
\section*{Exercise 1}
The EUI-48 MAC address space can have $2^{48} = 281474976710656$ possible addresses. The IPv4 address space has $2^32 = 4294967296$
addresses while IPv6 has = $2^{128} \approx 3,402823669209385 \cdot 10^{38}$ addresses. In practice, some of the addresses in
these spaces may be reserved for special purposes (e.g.
\texttt{FF:FF:FF:FF:FF:FF} as the broadcast MAC address or the
\texttt{127.0.0.0/8} subnet reserved for loopback networks
in IPv4) so the number of usable addresses is smaller than
these figures.
\section*{Exercise 2}
$$D = 1010100000_2 = 512_{10} + 128_{10} + 32_{10} = 672_{10}$$
$$G = 10011_2 = 19_{10}$$
$$r = |G| - 1 = 4$$
$$R =D \cdot 2^r \mod G = 10752 \mod 19 = 17$$
\section*{Exercise 3}
For 10 Mbps:
$$t = \frac{100 \cdot 512 b}{10^7\frac{b}{s}} = 5.12 ms$$
For 100 Mbps:
$$t = \frac{100 \cdot 512 b}{10^8\frac{b}{s}} = 0.512 ms$$
\section*{Exercise 4}
A mechanism that an AP can use to maintain constant reliability (e.g. constant BER) while communicating with a station that is getting farther away from it is to use rate adaptation: once transmission errors are detected through ARQ checks, the AP can switch to a lower transmission rate (akin to TCP's congestion control mechanisms) to counteract interference and lowering signal strength.
The AP may also decide to boost its transmission power if possible, thus increasing signal strength. However, this technique does not provide a linear increase in signal strength since obstacles or powerful interferences may be present.
In alternative, if the station is in a ESS and another AP is present in the same subnet, the station may decide to hop from the first AP to the new AP if the latter has a better RSSI. If the DS uses switches, those should be informed of the change of BSS so as to keep their switching tables updated.
\end{document}