| title |
|---|
Network Fundamentals |
Define rules and format of communication between network devices.
- Can apply to hardware or software (e.g., directly connected devices and HTTPS)
- Can support mechanisms for efficient and reliable communication (message acknowledgement, data compression, etc.)
Standard framework for interconnecting network protocols for end-to-end communication.
- Protocols should be modular and independent.
Used to teach computer networking. Developed in 1970s.
TODO PlantUML
- Application
- Presentation
- Session
- Transport
- Network
- Data Link
- Physical
More widely-used abstraction model.
- Based on OSI.
TODO plantUML
- Application
- Transport
- Internet
- Host-Network
Breakdown of data units at each layer:
"Don't Smoke Pot From Bongs"
Data Unit TCP/IP Layer Datagrams App Segments Transport Packets Network Frames Data Link Bits Physical
Encapsulation: Application
- Information is encapsulated with header (and sometimes trailer) data on the way down.
- More info is added at each layer.
Decapsulation: Physical
- Happens on the way back up the protocol stack.
Example: Encapsulation
TODO Names
1 Data 2 TCP/UDP Header Data 3 IP Header TCP/UDP Header Data 4 Frame Header IP Header TCP/UDP Header Data Frame Trailer
Transmission of bits/waveform/timing/et cetera.
Examples: coaxial, radio, fiber optic, et cetera.
Things to Consider:
- Security
- Bandwidth
- Ease of Installation
Delivers data in a local network (or point-to-point).
- Data Units: Frame
- 48-bit MAC address: Unique ID
- 24-bits for manufacturer ID
- 24-bits for device ID
- Data link layer devices (e.g., switches, bridges)
Delivers data between hosts, possibly on different networks.
- Data Unit: Packet
- 32-bit addresses
- Usually written as four octes in dotted decimal (e.g.,
172.16.1.250)
- Usually written as four octes in dotted decimal (e.g.,
- Network and host addresses
Note: Current standard is IPv6
Address Resolution Protocol (ARP): Resolves MAC address to corresponding IP address.
Internet Control Message Protocol (ICMP): Allows hosts to communicate about network conditions.
- e.g., ICMP Destination Unreachable message
Dynamic Host Configuration Protocol (DHCP): Dynamically assigns IP addresses.
Delivers data from process on one host to process on another.
- e.g., web browser on laptop talking to web server at NASA.
Port Numbers: Used to get the data to the correct process on a host.
- Well Known: < 1024
- Registered and Dynamic: > 49151
Connection-oriented with reliable delivery, flow, and congestion control.
- Sequence numbers (e.g., message 1/5), acknowledgement numbers (e.g., SIN/ACK)
Flags: SYN, ACK, FIN, PSH, URG
Most internet traffic uses TCP.
Connectionless, less overhead than TCP.
- Efficient for small transfers.
- Unreliable; no flow control, congestion control, or order.
Basically, anything that buffers or can be lossy, is good for UDP.
- Multicasting, streaming, tunneling, et cetera.
Resolves domain names to IP addresses.
Web browser/server interaction.
- Simple Mail Transfer Protocol (SMTP)
- Post Office Protocol (POP3) and IMAP 4
Remote accessing other computers.
Sharing files between computers.
Basic NAT: Translates one IP into another.
- e.g.,, mapping internal to external IP address.
Port Address Translation: Multiple hosts share one single public IP.
Can be static or dynamic (IP assigned to you).
Benefits:
- Sharing IP addressses.
- Securing devices behind NAT device (less visible points of entry)
| Command | Description |
|---|---|
| ipconfig | Display network interface config |
| ping | Send ICMP echo request |
| netstat | Display status of network connections |
| nslookup | DNS info |