
Explore the fundamentals of networking as background for the OSI seven layers, covering digital principles, binary concepts, logic tables, data compression, digital security, protocols, and error detection and correction.
Explore what a network is—from nodes and edges to protocols and topology—through practical examples like electricity and social networks, and learn the OSI seven-layer model and core networking concepts.
Explore binary, octal, decimal, and hex counting with digits 0–9 and a–f. See how hex '10' equals 16 in decimal.
Explore binary addition in base 2, use carries and two's complement to form negative numbers, and demonstrate how addition leads to subtraction and beyond through three-bit examples.
Explore subtraction as addition with binary conversion and two's complement, flipping bits and adding one to form negative numbers. Compare gray code, BCD, and other binary codes for efficient encoding.
Explore binary numbers, the binary point, and fractions as powers of two, including 1/2 and 1/4, why 0.3 repeating cannot be represented, and xor with two's complement for negatives.
Explore logic gates, including and, or, not, and exclusive or, with truth tables and symbolic notation using p and q. Build and simplify expressions step by step to reveal equivalences.
Explore how to represent logic with and, or, not gates and symbols for nand, nor, and xor, then build and trace circuit diagrams.
Explore how to construct truth tables for two, three, and four variables in the OSI networking context, using and, or, not, and xor, with step-by-step logic and the plus-multiplication analogy.
Learn how to form the sum of products (minterms) for a three-variable function A, B, C, identifying which input combinations yield 1 and OR-ing the corresponding products.
Build and analyze truth tables for two or three boolean variables using and, or, not, and xor. Relate or to plus and and to multiplication as in circuit diagrams.
Explore K maps for simplifying boolean expressions by forming minterms and max terms, grouping ones in 2, 4, or 8, including wraparound edge cases and three- and four-variable examples.
Apply K maps to derive maxterms by focusing on zeros, using A, B, and C to form max terms, and simplify with don’t cares for y.
Practice with k maps shows constructing minimal expressions using sum of products and product of sums by grouping ones and wrapping around with p, q, and r.
Explore logic concepts such as and, or, not, and xor, and learn how truth tables drive gate behavior and binary addition through half and full adders.
Explore the distinction between polynomial-time problems and NP problems, and learn how the Hungarian algorithm solves the assignment problem, including contrasts with the traveling salesman, Hamiltonian circuit, and Euler path.
Apply the Hungarian algorithm to the assignment problem by building a cost matrix, subtracting row and column minima, and covering zeros with the minimum lines until an assignment exists.
Demonstrate Dijkstra's shortest path on a weighted graph, computing the minimum costs from A to Z and tracing predecessors to reveal the optimal route.
Demonstrate applying the Dijkstra algorithm to identify the shortest path from a to h, tracing the route a → f → d → c → h and comparing equivalent choices.
Learn Ford-Fulkerson max flow and min cut in network graphs. Identify the source and sink, capacities, and cuts, and see how the maximum flow equals the minimum cut in practice.
Explore error detection and correction within coding theory, and compare analog and digital transmission, revealing how sent zeros and ones are encoded, detected, and corrected from ground to satellite links.
Explore how cyclic redundancy check uses a polynomial and division to attach a remainder for error detection, and compare parity methods to ensure message integrity in networks.
Explore internet checksums by breaking a message into four parts, summing in hex and decimal, applying a one's complement, and enabling receiver verification across IPv4 and IPv6.
Explore parity checks, including even parity and double parity with row and column methods, and learn checksum and crc techniques for error detection, using xor, remainder, and polynomial division.
Explore the core idea of cryptographic hash functions and how they enable authentication and message integrity, including digital signatures, one-way input, fixed-length outputs, and no-collision uniqueness.
Explore distance concepts across Euclidean and Manhattan spaces, including donut and sphere geometries, using coordinate deltas and Pythagorean theorem. Learn Hamming distance and Gray code for error detection and correction.
Explore hamming code, using parity bits at positions 1, 2, 4, and 8 to detect and correct single-bit errors through a practical encoding example.
Learn how Huffman codes enable lossless data compression by building a Huffman tree from symbol frequencies to minimize the number of bits used per symbol.
Explore Huffman encoding by building a binary tree from symbol frequencies, merging smallest counts to produce shorter codes for frequent letters and longer for rare ones.
Demonstrate another Huffman encoding example by merging the smallest frequencies to build a binary tree, assign binary codes, and compare total bits to the original encoding to show potential savings.
Explore how wireshark analyzes tcp, udp, icmp, and ip traffic across osi layers, decodes headers, and traces packets to diagnose bottlenecks and traffic issues.
Explore core cryptography concepts for secure communication, including confidentiality, data integrity, authentication, and non repudiation, and learn about plain text, ciphertext, and cipher types such as monoalphabetic and polyalphabetic ciphers.
Explore ethical hacking fundamentals, from hacker types and cyber kill chain to reconnaissance, scanning, and tools like Kali Linux, highlighting CIA triad and cybercrime risks.
Explore footprinting as the hacker mindset, gathering public and private information to map targets, assess exposure, and reveal weaknesses from DNS, IP addresses, VPNs, and social engineering.
Describe how HTTPS protects web traffic from man-in-the-middle attacks using certificate authorities, TLS handshakes, and secure cookies, while enforcing secure connections with HSTS and upgrade insecure requests.
This is a networking course; the complete addendum to BCS 262, whose description lays below.
We cover binary, Huffman encoding, networks from a mathematical perspective and many other network algorithms, such as those that appear in CLRS.
Students will benefit from this course by learning about networks. There is no greater benefit than this! (Which alone is many times the price of admission.)
This course builds on foundations of networks such as Ford-Fulkerson, in which we learn the how, why and what of networks. We also address many burning questions on networks, such as "If networks were an animal... what type of animal would they be?" - well obviously an OCTOPUS! But why, you ask... I guess you'll just have to come and see!