diff --git a/hw2/src/impl/GBNTReceiver.java b/hw2/src/impl/GBNTReceiver.java index 427f06a..fc61593 100644 --- a/hw2/src/impl/GBNTReceiver.java +++ b/hw2/src/impl/GBNTReceiver.java @@ -8,9 +8,6 @@ * value of the receiver disconnection timeout. */ - -package impl; - import transport.Receiver; import transport.TimeoutAction; diff --git a/hw2/src/impl/GBNTSender.java b/hw2/src/impl/GBNTSender.java index 00f69d3..2c87fc6 100644 --- a/hw2/src/impl/GBNTSender.java +++ b/hw2/src/impl/GBNTSender.java @@ -8,8 +8,6 @@ * fixed window. */ -package impl; - import transport.TimeoutAction; import java.util.*; diff --git a/hw2/src/impl/README b/hw2/src/impl/README new file mode 100644 index 0000000..2060f1a --- /dev/null +++ b/hw2/src/impl/README @@ -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. diff --git a/hw3/.gitignore b/hw3/.gitignore new file mode 100644 index 0000000..92bdad5 --- /dev/null +++ b/hw3/.gitignore @@ -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 + + diff --git a/hw3/hw3.pdf b/hw3/hw3.pdf new file mode 100644 index 0000000..77a56d3 Binary files /dev/null and b/hw3/hw3.pdf differ diff --git a/hw3/hw3.tex b/hw3/hw3.tex new file mode 100644 index 0000000..88c53b8 --- /dev/null +++ b/hw3/hw3.tex @@ -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}