fundamentals
- Russ's course on OrhanErgun
- RINA model = Recursive InterNet[work] Architecture (application, host, interface level):
- multiplexing - managing shared resource; involves addressing
- marshaling - making data intelligible; dictionary + grammar
- error control - finding and fixing errors
- flow control - pacing communications
- U/L bit - Universal(Unique)/Local - 7th bit
- I/G bit - Individual(unicast)/Group(multicast) - 8th bit
- these are at the beginning so they are transmitted first (Ethernet transmits the octet backwards)
- IPv6 nibble boundary - /4
- v6 multicast scope not used in the production to prevent leaking multicast info
- tunneling - encapsulation of a lower layer PDU into higher layer
- shared fate
- DPDK = Data Plane Development Kit
- middlebox
- Hamming codes and other error correction codes are rare in protocol implementations cause its cheaper network and processing wise to retransmit
- what problem does the protocol solve
- SID = Session ID, five tuple (srcip, dstip, srcport, dstport, protocol number)
- CUBIT TCP - most widely implemented
- app can see the network as a socket/queue (ftp), function call (grpc = google remote procedure call) or memory space (rdma = remote direct memory access)
- mmu = memory management unit