Distributed and Parallel Computer Systems
CSC 423
Fall 2021-2022
Lecture 6
Principles of Networking
Instructor
Dr / Ayman Soliman
➢ Contents
➢ Principles of Networking
1. Mode of transmission
2. Switching schemes
3. Protocol suites
4. Routing
5. Congestion control
30/3/2022 Dr/ Ayman Soliman 2
❑ 1-Mode of transmission
➢ Packets
o messages divided into packets
o packets queued in buffers before sent onto link
o The simplest form of packet is a sequence of binary data
(an array of bits or bytes) of restricted length, together with
addressing information sufficient to identify the source and
destination computers.
➢ Data streaming
o links guarantee QoS (rate of delivery)
o for multimedia traffic
o higher bandwidth
30/3/2022 Dr/ Ayman Soliman 3
❑ 2-Switching schemes
➢ A network consists of a set of nodes connected together by circuits.
o Broadcasts : Broadcasting is a transmission technique that involves no switching
▪ send messages to all nodes
▪ nodes listen for own messages (carrier sensing)
o Circuit switching (phone networks): At one time telephone networks were the
only telecommunication networks.
o Packet switching (TCP/IP): data packets in a computer network can be stored
and processed at the nodes fast enough to give the illusion of instantaneous
transmission.
▪ store-and-forward → packets that arrive at a node are first stored at the node
and then forwarded toward their destinations.
▪ unpredictable delays
30/3/2022 Dr/ Ayman Soliman 4
❑ 2-Switching schemes
➢ Frame relay ( another switching method) which brings some of the
advantages of circuit switching to packet-switching networks.
➢ ATM networks are the result. They overcome the delay problems by
switching small packets (called frames) on the fly.
➢ Frames as a whole are not stored at nodes but pass through them as
short streams of bits.
30/3/2022 Dr/ Ayman Soliman 5
❑ 3-Protocols
➢ Protocol is used to refer to a well-known set of rules and formats to
the user for communication between processes in order to perform a
given task.
➢ A protocol is implemented by a pair of software modules located in
the sending and receiving computers.
30/3/2022 Dr/ Ayman Soliman 6
❑ Protocol layers
➢ Network software is arranged in a hierarchy of layers. Each layer
presents an interface to the layers above it that extends the properties
of the underlying communication system.
30/3/2022 Dr/ Ayman Soliman 7
❑ Why such a Layering?
➢ Three main reasons
o Conceptual Simplicity
o Modularity of code (facilitates writing software for each layer
independent of other layers)
o Packet processing well organized
➢ The OSI (Open Systems Interconnection)
o a protocol stack that conforms to the seven-layer Reference
Model adopted by ISO.
30/3/2022 Dr/ Ayman Soliman 8
❑ OSI Model
➢ Each layer performs a well-defined function and provides a well-
defined service to the next higher layer.
➢ The interface between layer n module and lower layer n-1 module at
a node is precisely defined.
➢ A layer n module at one end communicates with its peer layer n
module at the other end by passing a message into the layer n-1
module
30/3/2022 Dr/ Ayman Soliman 9
❑ Physical Layer
➢ Function: Provides a physical link for transmitting a sequence of bits
between any pair of connected nodes.
➢ Maps the incoming bits from the data link layer into signals
appropriate for the channel, and at the receiving end, maps the
signals back into bits.
30/3/2022 Dr/ Ayman Soliman 10
❑ Data Link Layer
➢ The sending DL module places some control bits called header at the
beginning of each packet and some more overhead bits called trailer
at the end of each packet, resulting in a longer string of bits called a
frame.
➢ Some of these overhead bits perform error detection/correction, and
some request retransmissions when error occurs.
30/3/2022 Dr/ Ayman Soliman 11
❑ Network Layer
➢ to transmit packet
o Function 1: Addressing
o Function 2: Routes packets from their sources through the
network to their destinations
o Function 3: Deals with different types of networks
30/3/2022 Dr/ Ayman Soliman 12
❑ Network Layer
➢ The structure and the flow of data when a message is transmitted
using top four layered protocol
30/3/2022 Dr/ Ayman Soliman 13
❑ Examples from protocols used on the Internet
Layer Description Example
Application Protocols for specific applications HTTP, FTP, SMTP
Presentation Protocols for independent data representation and Secure Sockets, COBRA CDR
encryption if required.
Session Protocols for failure detection and recovery.
Transport Message-level communication between ports attached TCP, UDP
to processes. Connection-oriented or connectionless.
Network Packet-level transmission on a given network IP, ATM, ATM cell transfer
Requires routing in WANs and internet.
Data link Packet-level transmission between nodes connected by a Ethernet MAC, ATM cell transfer.
physical link.
30/3/2022 Dr/ Ayman Soliman 14
❑ Internetwork protocols
➢ Internetwork protocols are overlaid on underlying networks
protocols.
➢ The network interface layer accepts internetwork packets and
converts them into packets suitable for transmission by the network
layers of each underlying network.
30/3/2022 Dr/ Ayman Soliman 15
❑ Ports and Addressing
➢ The transport layer's task is to provide a network-independent
message transport service between pairs of network ports.
➢ Ports are software-definable destination points for communication
within a host computer.
➢ Addressing The transport layer is responsible for delivering
messages to destinations with transport addresses that are composed
of the network address of a host computer and a port number.
30/3/2022 Dr/ Ayman Soliman 16
❑ 4-Routing
➢ Routing is a function that is required in all networks that provide
direct connections between all pairs of attached hosts.
➢ The delivery of packets to their destinations is the responsibility of
the routers located at connection points.
30/3/2022 Dr/ Ayman Soliman 17
❑ Routing algorithm
➢ The packet must be transmitted in a series of hops, passing through
router nodes.
➢ The determination of routes for the transmission of packets to their
destinations is the responsibility of a routing algorithm.
➢ Distance-vector algorithm: each node
o stores table of links & cost info of links, cost infinity for faulty
links
o periodically updates the table and sends to neighbors (its
knowledge of the network based on traffic monitoring and the
detection of configuration changes or failures).
30/3/2022 Dr/ Ayman Soliman 18
❑ Routing Figure
30/3/2022 Dr/ Ayman Soliman 19
❑ Routing tables for the network
30/3/2022 Dr/ Ayman Soliman 20
❑ RIP routing algorithm
➢ A router exchanges information about the network with its
neighboring nodes by sending a summary of its routing table using a
router information protocol (RIP).
➢ Update: Each 30 seconds or when local table changes. send an RIP
packet containing a copy of the table on each non-faulty outgoing
link
➢ Propagation: When router X finds that router Y has a shorter and
faster path to router Z, then it will update its local table to indicate
this fact.
30/3/2022 Dr/ Ayman Soliman 21
❑ Sequence of changes to the routing tables
➢ after the link labelled 3 in Figure is broken
30/3/2022 Dr/ Ayman Soliman 22
❑ Step 1: costs for routes that use Link 3 have been set to ∞ at A, D
30/3/2022 Dr/ Ayman Soliman 23
❑ Step 2: after first exchange of routing tables
30/3/2022 Dr/ Ayman Soliman 24
❑ Step 3: after second exchange of routing tables
30/3/2022 Dr/ Ayman Soliman 25
❑ Step 4: after third exchange of routing tables.
30/3/2022 Dr/ Ayman Soliman 26
❑ 5-Congestion control
➢ The capacity of a network is limited by the performance of its
communication links and switching nodes.
➢ When the load at any particular link or node approaches its capacity,
queues will build up at hosts
➢ If the load continues at the same high level, the queues will continue
to grow until they reach the limit of available buffer space.
➢ when the load on a network exceeds 80% of its capacity, the total
throughput tends to drop as a result of packet losses unless usage of
heavily loaded links is controlled.
30/3/2022 Dr/ Ayman Soliman 27
❑ Congestion control
➢ Congestion control is achieved by informing nodes along a route that
congestion has occurred, and their rate of packet transmission should
therefore be reduced.
➢ Congestion information may be supplied to the sending node by
explicit transmission of special messages requesting a reduction in
transmission rate.
30/3/2022 Dr/ Ayman Soliman 28
30/3/2022 Dr/ Ayman Soliman 29