Networking Fundamentals: TCP/IP, Topologies, and Protocols
Understanding Connectionless Packet-Switched Networks
A connectionless packet-switched network transmits data as independent packets without establishing a dedicated connection. Each packet may take a different path, optimizing network resources and routing flexibility.
Operation:
- Packet Creation: Data is divided into packets, each with a header (addressing information) and payload (data).
- Routing: Routers determine paths for each packet based on destination addresses and network conditions.
- Transmission:
Internet Routing and Data Link Layer Protocols: Core Concepts
Goal of Routing
Each router finds a path or route to every destination and produces a forwarding table. Outcome: Packets follow computed paths if each router forwards according to its table.
Network State
Represents the set of functioning links and routers at a given time. Routing adapts to dynamic changes (e.g., link or router failures) by recomputing routes based on the current network state.
Local vs. Global Views
- Global View: The network state represents an overall view used to compute paths.
- Local
Networking Fundamentals: From Basics to Advanced Concepts
Chapter 2: Elements of Network Communication
- Elements of Communication
- Segmentation and Multiplexing
- Network Components: Devices (end and intermediary), facilities, and services
- LAN, WAN, and Internet
- Protocol Suite: Collection of protocols
- Models Based on Protocol Layers: Advantages
- Difference Between Model and Reference Model Protocol
- OSI Model and TCP/IP: Layers, encapsulation, differences
- PDU: Protocol Data Unit names for each layer
- Routing Mechanisms: How messages are routed in each layer
Chapter 3: Application
Read MoreGraph Algorithms: Depth-First Search, Bellman-Ford, and Euler
Depth-First Search (DFS)
Code:
def _dfs(G, node, verts):
# Add node to visited
verts.add(node)
# For each neighbor
for neigh in G[node]:
# If neighbor not visited
if neigh not in verts:
# Start exploration from neighbor
verts = _dfs(G, neigh, verts)
return verts
Connected Components
Code:
def cnx(G):
components = []
visited = set()
# For every node (so we guarantee that every node is visited even if not connected)
for node in G:
if node in visited: continue # If already visited, next
# Explore (e.g. with DFS) from
Telecom Signal Processing: PCM, Quantization, Multiplexing
Digitalization of Telephone Channels and Quantization Distortion
The telephone channel, a unidirectional path with a bandwidth of 3100 Hz (300 Hz to 3400 Hz), can be digitalized using Pulse Code Modulation (PCM). When combined with Time Division Multiplexing (TDM), it enhances the efficiency of transmission paths. PCM converts analog samples into digital forms, improving noise immunity during transmission. The analog signal undergoes three operations in an Analog-to-Digital (A/D) converter before
Read MoreWeb Search Engines: Key Concepts and Evaluation Metrics
What is Web Search?
Web search provides access to heterogeneous, distributed information that is publicly available on the World Wide Web.
- Key Elements: User, Web, Crawler/Spider, Indexer, Ads, Query Processor
The spider builds the corpus, collecting web pages recursively. The indexer creates inverted indexes, with various policies regarding which words are indexed, capitalization, and support for Unicode. The query processor serves query results. The front end handles query reformulation, word stemming,
Read More