Lecture 4
Lecture 4
• Networking Overview
• Internetworking
• Communication Models (OSI & TCP/IP)
• Message Passing in Communication
• Stream-Oriented Communication
• Key Differences between Message
Passing and Stream-Oriented Communication
• Conclusion & Assignment
1.1. Networking
Networking:
• Networking refers to the practice of connecting multiple computing devices (like
computers, smartphones, and servers) to exchange data and resources.
• A network can range from a simple local setup (such as in an office) to complex
structures spanning across cities or countries.
There are several types of networks:
• LAN (Local Area Network): A network that spans a small geographical area (e.g., an
office or building).
• WAN (Wide Area Network): A network that spans large geographical areas (e.g., a city,
country, or across continents). The internet is the most notable example of a WAN.
• MAN (Metropolitan Area Network): A network that spans a city or large campus.
Key components of a network:
• Nodes: Devices such as computers, routers, or printers
connected to the network.
• Transmission Media: The physical (e.g., cables) or wireless
channels used to transfer data.
• Network Interface Card (NIC): Hardware component in each
device that allows it to connect to the network.
• Protocols: Rules and conventions for communication (e.g.,
TCP/IP, HTTP).
1.2. Internetworking
• Internetworking is the process of connecting multiple
networks to form a larger network. The most common form
of internetworking is the Internet itself, which connects
millions of private, public, and corporate networks.
• Routers are critical in internetworking because they forward
data between different networks based on destination
addresses.
Why is internetworking important?
• It enables global communication by allowing heterogeneous
networks to work together.
• Provides scalability, meaning that smaller networks can be
expanded as needed.
• Interoperability is key: devices and networks from different
vendors must be able to communicate effectively.
2. Communication Models and Abstractions
• Transmission Control Protocol (TCP): The most common protocol for stream-
oriented communication, as it ensures that the data is reliably transmitted and
arrives in the correct order. TCP establishes a connection before any data is sent,
maintains that connection, and then terminates it when the communication is
complete.
• User Datagram Protocol (UDP): While primarily used for message passing, UDP
can also handle real-time stream-oriented communication (e.g., live gaming or
VoIP). Unlike TCP, it is connectionless and does not guarantee message delivery,
making it faster but less reliable.
5. Key Differences Between Message Passing and Stream-Oriented Communication
Stream-Oriented
Feature Message Passing
Communication
Data Format Discrete messages Continuous stream
Often connectionless (e.g., Connection-oriented (e.g.,
Connection
UDP) TCP)
Real-time continuous data
Use Case Event-driven communication
(e.g., live video, voice)
Can be reliable (TCP) or
Delivery Guarantee Typically reliable (TCP)
unreliable (UDP)
Synchronous, as a
Can be asynchronous or
Synchronization connection must be
synchronous
maintained
Conclusion
• Understanding networking, internetworking, and various communication models is
crucial for designing efficient systems that meet the needs of modern applications.
Whether we are sending discrete messages or streaming data in real-time, the
principles behind how this communication works remain essential in building
scalable, reliable networks.
Key takeaways:
• Networking connects devices, while internetworking connects networks.
• Communication models (like OSI and TCP/IP) help us understand how data moves
across networks.
• Message passing and stream-oriented communication offer two different
approaches to data transmission.
Assignment # 1
• Research a real-world example of each communication type
(message passing vs stream-oriented) and write a brief report
on the protocols and technologies used in each case.