2. MAIN REFERENCES
[1] J. F. Kurose and K. W. Ross. Computer Networking: A Top-down Approach. 8th
Edition, Pearson, 2020.
[2] E. Chou. Mastering Python Networking. 4th Edition, Packt, 2023.
[3] A. S. Tanenbaum, N. Feamster, and D. J. Wetherall. Computer Networks. 6th Edition,
Pearson, 2021.
[4] B. A. Forouzan. Data Communications and Networking with TCP/IP Protocol Suite. 6th
Edition, McGrawHill, 2022.
[5] W. Stallings. Data and Computer Communications. 10th Edition, Pearson, 2014
6. COMPUTER NETWORKS DEFINITION
A collection of independent computing devices that are
interconnected via a communication link, in-order-to share
resources and information
a collection of interconnected devices that share resources
and information
1
7. MAIN APPLICATIONS
➢ Data Exchange
➢ Resource Sharing
➢ Information Access
➢ Internet Access
➢ Online Games
➢ Online Banking
➢ E-Commerce
➢ E-Learning
➢ Monitoring and Management
➢ Intelligent Systems Management and IoT
2
8. INTERNET
The Internet is a global network of interconnected computers and
other devices that communicate with each other using a set of
common protocols (TCP/IP).
➢ ARPANET Project
➢ Being Global in 1990
➢ Introduction Of WWW
3
12. HARDWARE OF COMPUTER NETWORKS
Broadcast Networks
In Broadcast networks there is a communication channel shared between all computers,
and each computer sends its messages over the channel, which all computers receive.
All nodes must continuously listen to the channel to receive their messages.
An example of a Broadcast network
(
Bus Topology
))
6
13. HARDWARE OF COMPUTER NETWORKS
Broadcast networks challenges
➢ Communication channel Management
➢ Security and Privacy
➢ Overall Performance
7
14. HARDWARE OF COMPUTER NETWORKS
Point-to-Point Networks
In point-to-point networks, there is a physical channel between two stations
on the network, and no other station is connected to this channel to use it.
8
15. HARDWARE OF COMPUTER NETWORKS
Network Scale
➢ Personal Area Networks (PAN)
➢ Local Area Networks (LAN)
➢ Metropolitan Area Networks (MAN)
➢ Region Area Networks (RAN)
➢ Wide Area Networks (WAN)
➢ Other Networks (SAN ،VPN ,...)
9
21. SOFTWARE OF COMPUTER NETWORKS
➢ Protocol
➢ Layered Architecture
➢ Connection-Oriented and Connectionless Services
➢ Service Functions
➢ Services and Protocols Interface
15
22. SOFTWARE OF COMPUTER NETWORKS
General Concepts of Layered Architecture
Layer: Network software is organized into a layered structure to
reduce design complexity, network software is organized into a
layered structure.
Protocol : The set of rules and regulations used in each layer to
communicate with the corresponding layer.
Protocol Stack : A set of protocols used in a particular system.
16
23. SOFTWARE OF COMPUTER NETWORKS
General Concepts of Layered Architecture
➢ Peer Processes: Message exchange between similar layers
➢Interface: :Between any two adjacent layers, to define basic
operations and services
➢Network Architecture: layered design and the set of all
protocols.
17
26. SOFTWARE OF COMPUTER NETWORKS
Important Considerations
➢ Addressing and connection system
➢ Connection Rules
➢ Error Control
➢ Flow Control
➢ Packet Sequences
➢ Packet Fragmentation and Re-assembling
➢ Multiplexing
➢ Routing
19
27. SOFTWARE OF COMPUTER NETWORKS
Reference Model OSI (Open System Interconnection)
➢ Introduced by ISO
➢ An abstract model aimed at defining how information is
exchanged in computer networks
➢ A theoretical model to teach and understand the data exchange
process.
➢ In this model, the information exchange process is divided into
seven stages or layers.
20
28. SOFTWARE OF COMPUTER NETWORKS
Reference Model OSI (Open System Interconnection)
21
29. SOFTWARE OF COMPUTER NETWORKS
Physical Layer
First Layer of OSI
Main task: sending raw bits over the communication channel
Other tasks:
Voltage level specification (0-1)
➢ Communication link status (Simplex/duplex)
➢ Type of transmitted information (analog/digital)
➢ Multiplexing
➢ (transmission rate, channel capacity, type of communication line, etc.)
22
30. SOFTWARE OF COMPUTER NETWORKS
Datalink Layer
Two sub-layers: LLC , MAC
Main task: Convert the data stream into raw bits and transmit it to
the communication channel.
Other tasks:
➢ Framing
➢ Addressing
➢ Error Control
➢Flow Control
➢ Multi-access
23
31. SOFTWARE OF COMPUTER NETWORKS
Network Layer
Main task: Subnet control and packet routing management
Other tasks:
➢ Routing (Static, Dynamic)
➢ Addressing
➢ Congestion control
➢ Connecting heterogeneous networks
24
32. SOFTWARE OF COMPUTER NETWORKS
Layer
Transport
Main task: Establish a full two-way communication between two
devices on the same network.
Other tasks:
➢ Segmentation and re-assembly
➢ Error control/ Flow control
➢ Connection establishment
25
33. SOFTWARE OF COMPUTER NETWORKS
Session Layer
Main task: Establishing and terminating connections between
devices on a network
Other tasks:
➢ Session control
➢ Synchronization
26
34. SOFTWARE OF COMPUTER NETWORKS
Layer
Presentation
Main task: Preparing data for the application layer
Other tasks:
➢ Data format management
➢Encryption and Decryption
➢ Compression
27
35. SOFTWARE OF COMPUTER NETWORKS
Application Layer
Main task: Defining protocols and interacting directly with the end
user
Other tasks:
➢Remote access
➢Web services
➢Email services
28
36. SOFTWARE OF COMPUTER NETWORKS
OSI advantages vs. disadvantages
29
Advantages Disadvantages
Educational aspects Theoretical and abstract aspect
Modular structure Heterogeneous division of tasks
Independent layers Additional layers and protocols
OS-independent Overlapping services
Security High complexity