Tag: networking

Full duplex wifi

This paper presents the design and implementation of the first in-band full duplex WiFi radios that can simultaneously transmit and receive on the same channel using standard WiFi 802.11ac PHYs and achieves close to the theoretical doubling of throughput in all practical deployment scenarios. Full duplex, if possible, has tremendous implications for network design, not least of which is the fact that cellular networks could cut their spectrum needs by half. With an in-band full-duplex system we could use a single channel to get the same performance.

Networking Principles

Communications is not an easy science. The math is heavy, and intuition is slow to develop. To complicate things further, the field does not stay put. New concepts are always coming to the fore.

This website offers tutorials I have written on various topics in analog and digital communications that will help you cut through this complexity. I keep adding to this collection, albeit very slowly.

Our field represents a pinnacle of human achievement in applied mathematics. During our engineering education, most of us don’t develop the intuitive understanding of these beautiful ideas. I have tried to make these tutorials as simple as is possible given all the math required. I hope I have been successful in taking you closer to the “aha” mome

Star wars traceroute

rothfuss$ traceroute -q1 216.81.59.173
[…]
14 episode.iv (206.214.251.1) 360.289 ms
15 a.new.hope (206.214.251.6) 284.098 ms
16 it.is.a.period.of.civil.war (206.214.251.9) 269.723 ms
17 rebel.spaceships (206.214.251.14) 289.055 ms
18 striking.from.a.hidden.base (206.214.251.17) 316.657 ms
19 have.won.their.first.victory (206.214.251.22) 316.848 ms
20 against.the.evil.galactic.empire (206.214.251.25) 270.993 ms
21 during.the.battle (206.214.251.30) 278.327 ms
22 rebel.spies.managed (206.214.251.33) 268.359 ms
23 to.steal.secret.plans (206.214.251.38) 267.354 ms
24 to.the.empires.ultimate.weapon (206.214.251.41) 261.112 ms
25 the.death.star (206.214.251.46) 283.052 ms
26 an.armored.space.station (206.214.251.49) 349.085 ms
27 with.enough.power.to (206.214.251.54) 317.103 ms
28 destroy.an.entire.planet (206.214.251.57) 286.048 ms
29 pursued.by.the.empires (206.214.251.62) 283.335 ms
30 sinister.agents (206.214.251.65) 296.739 ms
31 princess.leia.races.home (206.214.251.70) 285.375 ms
32 aboard.her.starship (206.214.251.73) 276.528 ms
33 custodian.of.the.stolen.plans (206.214.251.78) 285.010 ms
34 that.can.save.her (206.214.251.81) 317.339 ms
35 people.and.restore (206.214.251.86) 282.054 ms
36 freedom.to.the.galaxy (206.214.251.89) 274.677 ms
37 0—–i——-i—–0 (206.214.251.94) 359.144 ms
38 0——————0 (206.214.251.97) 316.838 ms
39 0—————–0 (206.214.251.102) 397.795 ms
40 0—————-0 (206.214.251.105) 483.973 ms
41 0—————0 (206.214.251.110) 349.378 ms
42 0————–0 (206.214.251.113) 416.797 ms
43 0————-0 (206.214.251.118) 448.259 ms
44 0————0 (206.214.251.121) 299.694 ms
45 0———–0 (206.214.251.126) 282.940 ms
46 0———-0 (206.214.251.129) 267.170 ms
47 0———0 (206.214.251.134) 271.722 ms
48 0——–0 (206.214.251.137) 276.457 ms
49 0——-0 (206.214.251.142) 304.949 ms
50 0——0 (206.214.251.145) 313.470 ms
51 0—–0 (206.214.251.150) 312.838 ms
52 0—-0 (206.214.251.153) 336.959 ms
53 0—0 (206.214.251.158) 296.122 ms
54 0–0 (206.214.251.161) 272.652 ms
55 0-0 (206.214.251.166) 358.504 ms
56 00 (206.214.251.169) 300.241 ms
57 i (206.214.251.174) 284.062 ms
58 by.ryan.werber (206.214.251.177) 277.565 ms
59 blizzards.breed.ccie.creativity (206.214.251.182) 271.802 ms
60 please.try.again.tracerote.to.obiwan.scrye.net (206.214.251.185) 273.568 ms
61 read.more.at.beaglenetworks.net (206.214.251.190) 271.030 ms

Bufferbloat

very detailed and troubling discussion about the scalability problems of the internet.

You see various behavior going on as TCP tries to find out how much bandwidth is available, and (maybe) different kinds of packet drop (e.g. head drop, or tail drop; you can choose which end of the queue to drop from when it fills). Note that any packet drop, whether due to congestion or random packet loss (e.g. to wireless interference) is interpreted as possible congestion, and TCP will then back off how fast to will transmit data.