SlideShare a Scribd company logo
1 of 54
1
Chapter 1
Foundation
Computer Networks: A Systems Approach, 5e
Larry L. Peterson and Bruce S. Davie
Copyright © 2010, Elsevier Inc. All rights Reserved
2
Chapter
1
Problems
 How to build a scalable network that will support
different applications?
 What is a computer network?
 How is a computer network different from other
types of networks?
 What is a computer network architecture?
3
Chapter
1
Chapter Outline
 Applications
 Requirements
 Network Architecture
 Implementing Network Software
 Performance
4
Chapter
1
Chapter Goal
 Exploring the requirements that different
applications and different communities place on
the computer network
 Introducing the idea of network architecture
 Introducing some key elements in implementing
Network Software
 Define key metrics that will be used to evaluate
the performance of computer network
5
Chapter
1
Applications
 Most people know about the Internet (a
computer network) through applications
 World Wide Web
 Email
 Online Social Network
 Streaming Audio Video
 File Sharing
 Instant Messaging
 …
6
Chapter
1
Example of an application
A multimedia application including video-conferencing
7
Chapter
1
Application Protocol
 URL
 Uniform Resource Locater
 http://www.cs.princeton.edu/~llp/index.html
 HTTP
 Hyper Text Transfer Protocol
 TCP
 Transmission Control Protocol
 17 messages for one URL request
 6 to find the IP (Internet Protocol) address
 3 for connection establishment of TCP
 4 for HTTP request and acknowledgement
 Request: I got your request and I will send the data
 Reply: Here is the data you requested; I got the data
 4 messages for tearing down TCP connection
8
Chapter
1
Requirements
 Application Programmer
 List the services that his application needs: delay
bounded delivery of data
 Network Designer
 Design a cost-effective network with sharable
resources
 Network Provider
 List the characteristics of a system that is easy to
manage
9
Chapter
1
Connectivity
 Need to understand the
following terminologies
 Scale
 Link Nodes
 Point-to-point
 Multiple access
 Switched Network
 Circuit Switched
 Packet Switched
 Packet, message
 Store-and-forward
Direct Links
(a) Point-to-point
(b) Multiple access
10
Chapter
1
Connectivity
 Terminologies (contd.)
 Cloud
 Hosts
 Switches
 internetwork
 Router/gateway
 Host-to-host connectivity
 Address
 Routing
 Unicast/broadcast/multicast
(a) A switched network
(b) Interconnection of networks
(a)
(b)
11
Chapter
1
Cost-Effective Resource Sharing
 Resource: links and
nodes
 How to share a link?
 Multiplexing
 De-multiplexing
 Synchronous Time-division
Multiplexing
 Time slots/data
transmitted in
predetermined slots
Multiplexing multiple logical flows
over a single physical link
12
Chapter
1
Cost-Effective Resource Sharing
 FDM: Frequency Division
Multiplexing
 Statistical Multiplexing
 Data is transmitted based
on demand of each flow.
 What is a flow?
 Packets vs. Messages
 FIFO, Round-Robin,
Priorities (Quality-of-
Service (QoS))
 Congested?
 LAN, MAN, WAN
 SAN (System Area
Networks
A switch multiplexing packets from
multiple sources onto one shared
link
13
Chapter
1
Support for Common Services
 Logical Channels
 Application-to-Application communication path or a
pipe
Process communicating over an
abstract channel
14
Chapter
1
Common Communication Patterns
 Client/Server
 Two types of communication channel
 Request/Reply Channels
 Message Stream Channels
15
Chapter
1
Request/Reply Channels
 The request/reply channel would be used by the
file transfer and digital library applications. It
would guarantee that every message sent by
one side is received by the other side and that
only one copy of each message is delivered.
 The request/reply channel might also protect the
privacy and integrity of the data that flows over it,
so that unauthorized parties cannot read or
modify the data being exchanged between the
client and server processes.
16
Chapter
1
Message Stream Channels
 could be used by both the video-on- demand and
videoconferencing.
 might not need to guarantee that all messages are
delivered, since a video application can operate
adequately even if some frames are not received.
 It need to ensure that are delivered arrive in the same
order in which they were sent.
 It might want to ensure the privacy and integrity of the
video data.
 Finally, it might need to support multicast, so that multiple
parties can participate in the teleconference or view the
video.
17
Chapter
1
Reliability
Network should hide the errors to be more reliable.
** Types of Errors:
 Bits are lost
 Bit errors (1 to a 0, and vice versa)
 Burst errors – several consecutive errors
 Packets are lost (Congestion)
 Links and Node failures
 Messages are delayed
 Messages are delivered out-of-order
 Third parties eavesdrop
18
Chapter
1
Network Architecture
Example of a layered network system
19
Chapter
1
Network Architecture
Layered system with alternative abstractions available at a given layer
20
Chapter
1
Protocols
 Protocol defines the interfaces between the
layers in the same system and with the layers of
peer system
 Building blocks of a network architecture
 Each protocol object has two different interfaces
 service interface: operations on this protocol
 peer-to-peer interface: messages exchanged with
peer
 Term “protocol” is overloaded
 specification of peer-to-peer interface
 module that implements this interface
21
Chapter
1
Interfaces
Service and Peer Interfaces
22
Chapter
1
Protocols
 Protocol Specification: prose, pseudo-code, state
transition diagram
 Interoperable: when two or more protocols that
implement the specification accurately
 IETF: Internet Engineering Task Force
23
Chapter
1
Protocol Graph
Example of a protocol graph
nodes are the protocols and links the “depends-on” relation
RRP: Request/Reply Protocol
MSP: Message Stream Protocol
HHP: Host-to-Host Protocol
24
Chapter
1
Encapsulation
High-level messages are encapsulated inside of low-level messages
25
Chapter
1
OSI Architecture
The OSI 7-layer Model
OSI – Open Systems Interconnection
26
Chapter
1
Description of Layers
 Physical Layer
 Handles the transmission of raw bits over a communication link
 Data Link Layer
 Collects a stream of bits into a larger aggregate called a frame
 Network adaptor along with device driver in OS implement the
protocol in this layer
 Frames are actually delivered to hosts
 Network Layer
 Handles routing among nodes within a packet-switched network
 Unit of data exchanged between nodes in this layer is called a
packet
The lower three layers are implemented on all network nodes
27
Chapter
1
Description of Layers
 Transport Layer
 Implements a process-to-process channel
 Unit of data exchanges in this layer is called a message
 Session Layer
 Provides a name space that is used to tie together the potentially
different transport streams that are part of a single application
 Presentation Layer
 Concerned about the format of data exchanged between peers
 Application Layer
 Standardize common type of exchanges
The transport layer and the higher layers typically run only on end-
hosts and not on the intermediate switches and routers
28
Chapter
1
Internet Architecture
Internet Protocol Graph
Alternative view of the
Internet architecture. The
“Network” layer shown here
is sometimes referred to as
the “sub-network” or “link”
layer.
29
Chapter
1
Internet Architecture
 Defined by IETF
 Three main features
 Does not imply strict layering. The application is free to bypass
the defined transport layers and to directly use IP or other
underlying networks
 An hour-glass shape – wide at the top, narrow in the middle and
wide at the bottom. IP serves as the focal point for the
architecture
 In order for a new protocol to be officially included in the
architecture, there needs to be both a protocol specification and
at least one (and preferably two) representative implementations
of the specification
30
Chapter
1
Application Programming Interface
 Interface exported by the network
 Since most network protocols are implemented (those in
the high protocol stack) in software and nearly all
computer systems implement their network protocols as
part of the operating system, when we refer to the
interface “exported by the network”, we are generally
referring to the interface that the OS provides to its
networking subsystem
 The interface is called the network Application
Programming Interface (API)
31
Chapter
1
Application Programming Interface (Sockets)
 Socket Interface was originally provided by the
Berkeley distribution of Unix
- Now supported in virtually all operating systems
 Each protocol provides a certain set of services,
and the API provides a syntax by which those
services can be invoked in this particular OS
32
Chapter
1
Socket
 What is a socket?
 The point where a local application process attaches
to the network
 An interface between an application and the network
 An application creates the socket
 The interface defines operations for
 Creating a socket
 Attaching a socket to the network
 Sending and receiving messages through the socket
 Closing the socket
33
Chapter
1
Socket
 Socket Family
 PF_INET denotes the Internet family
 PF_UNIX denotes the Unix pipe facility
 PF_PACKET denotes direct access to the network
interface (i.e., it bypasses the TCP/IP protocol stack)
 Socket Type
 SOCK_STREAM is used to denote a byte stream
 SOCK_DGRAM is an alternative that denotes a
message oriented service, such as that provided by
UDP
34
Chapter
1
Creating a Socket
int sockfd = socket(address_family, type, protocol);
 The socket number returned is the socket descriptor for
the newly created socket
 int sockfd = socket (PF_INET, SOCK_STREAM, 0);
 int sockfd = socket (PF_INET, SOCK_DGRAM, 0);
The combination of PF_INET and SOCK_STREAM implies TCP
35
Chapter
1
Creating a Socket EXAMPLE
 #include <sys/socket.h>
 int main() {
 int sockfd = socket(AF_INET, SOCK_STREAM, 0);
 if (sockfd == -1) {
 // Handle error, e.g., print an error message
 perror("Socket creation failed");
 return -1;
 }
 // Continue with socket usage...
 return 0;
 }
In this example, a TCP socket (SOCK_STREAM) using the IPv4
address family (AF_INET) is created. Error handling is done using
perror to print an error message if the socket creation fails.
36
Chapter
1
Client-Server Model with TCP
Server:
 Passive open
 Prepares to accept connection, does not actually establish a connection
To do these actions, the Server invokes the followings:
int bind (int socket, struct sockaddr *address,
int addr_len)
binds the newly created socket to the specified address (IP+Port).
int listen (int socket, int backlog)
defines how many connections can be pending on the specified socket.
int accept (int socket, struct sockaddr *address,
int *addr_len)
accept operation carries out the passive open.
37
Chapter
1
Client-Serve Model with TCP
Bind
 Binds the newly created socket to the specified address i.e. the
network address of the local participant (the server)
 Address is a data structure which combines IP and port
Listen
 Defines how many connections can be pending on the specified
socket
38
Chapter
1
Client-Serve Model with TCP
Accept
 Carries out the passive open
 Blocking operation
 Does not return until a remote participant has established a
connection
 When it does, it returns a new socket that corresponds to the
new established connection and the address argument
contains the remote participant’s address
39
Chapter
1
Client-Serve Model with TCP
Client
 Application performs active open
 It says who it wants to communicate with
Client invokes
int connect (int socket, struct sockaddr *address,
int addr_len)
Connect
 Does not return until TCP has successfully established a
connection at which application is free to begin sending data
 Address contains remote machine’s address
40
Chapter
1
Client-Serve Model with TCP
In practice
 The client usually specifies only remote participant’s
address and let’s the system fill in the local
information
 Whereas a server usually listens for messages on a
well-known port
 A client does not care which port it uses for itself, the
OS simply selects an unused one
41
Chapter
1
Client-Serve Model with TCP
Once a connection is established, the application
process invokes two operation
int send (int socket, char *msg, int msg_len,
int flags)
sends the given message over the specified socket
int recv (int socket, char *buff, int buff_len,
int flags)
receives a message from the specified socket into the given buffer.
Both operations take a set of flags that control certain details of the
operation.
42
Chapter
1
Example Application: Client
#include <stdio.h>
#include <sys/types.h>
#include <sys/socket.h>
#include <netinet/in.h>
#include <netdb.h>
#define SERVER_PORT 5432
#define MAX_LINE 256
int main(int argc, char * argv[])
{
FILE *fp;
struct hostent *hp;
struct sockaddr_in sin;
char *host;
char buf[MAX_LINE];
int s;
int len;
if (argc==2) {
host = argv[1];
}
else {
fprintf(stderr, "usage: simplex-talk hostn");
exit(1);
}
43
Chapter
1
Example Application: Client
/* translate host name into peer’s IP address */
hp = gethostbyname(host);
if (!hp) {
fprintf(stderr, "simplex-talk: unknown host: %sn", host);
exit(1);
}
/* build address data structure */
bzero((char *)&sin, sizeof(sin));
sin.sin_family = AF_INET;
bcopy(hp->h_addr, (char *)&sin.sin_addr, hp->h_length);
sin.sin_port = htons(SERVER_PORT);
/* active open */
if ((s = socket(PF_INET, SOCK_STREAM, 0)) < 0) {
perror("simplex-talk: socket");
exit(1);
}
if (connect(s, (struct sockaddr *)&sin, sizeof(sin)) < 0) {
perror("simplex-talk: connect");
close(s);
exit(1);
}
/* main loop: get and send lines of text */
while (fgets(buf, sizeof(buf), stdin)) {
buf[MAX_LINE-1] = ’0’;
len = strlen(buf) + 1;
send(s, buf, len, 0);
}
}
44
Chapter
1
Example Application: Server
#include <stdio.h>
#include <sys/types.h>
#include <sys/socket.h>
#include <netinet/in.h>
#include <netdb.h>
#define SERVER_PORT 5432
#define MAX_PENDING 5
#define MAX_LINE 256
int main()
{
struct sockaddr_in sin;
char buf[MAX_LINE];
int len;
int s, new_s;
/* build address data structure */
bzero((char *)&sin, sizeof(sin));
sin.sin_family = AF_INET;
sin.sin_addr.s_addr = INADDR_ANY;
sin.sin_port = htons(SERVER_PORT);
/* setup passive open */
if ((s = socket(PF_INET, SOCK_STREAM, 0)) < 0) {
perror("simplex-talk: socket");
exit(1);
}
45
Chapter
1
Example Application: Server
if ((bind(s, (struct sockaddr *)&sin, sizeof(sin))) < 0) {
perror("simplex-talk: bind");
exit(1);
}
listen(s, MAX_PENDING);
/* wait for connection, then receive and print text */
while(1) {
if ((new_s = accept(s, (struct sockaddr *)&sin, &len)) < 0) {
perror("simplex-talk: accept");
exit(1);
}
while (len = recv(new_s, buf, sizeof(buf), 0))
fputs(buf, stdout);
close(new_s);
}
}
46
Chapter
1
Performance
 Bandwidth
 Width of the frequency band
 Number of bits per second that can be transmitted over a
communication link
 1 Mbps: 1 x 106 bits/second = 1x220 bits/sec
 1 x 10-6 seconds to transmit each bit or imagine that a
timeline, now each bit occupies 1 micro second space.
 On a 2 Mbps link the width is 0.5 micro second.
 Smaller the width more will be transmission per unit time.
47
Chapter
1
Bandwidth
Bits transmitted at a particular bandwidth can be regarded as
having some width:
(a) bits transmitted at 1Mbps (each bit 1 μs wide);
(b) bits transmitted at 2Mbps (each bit 0.5 μs wide).
48
Chapter
1
Performance
 Latency = Propagation + transmit + queue
 Propagation = distance/speed of light
 Transmit = size/bandwidth
 One bit transmission => propagation is important
 Large bytes transmission => bandwidth is important
49
Chapter
1
Delay X Bandwidth
 We think the channel between a pair of processes as a
hollow pipe
 Latency (delay) length of the pipe and bandwidth the
width of the pipe
 Delay of 50 ms and bandwidth of 45 Mbps
 50 x 10-3 seconds x 45 x 106 bits/second
 2.25 x 106 bits = 280 KB data.
Network as a pipe
50
Chapter
1
Delay X Bandwidth
 Relative importance of bandwidth and latency
depends on application
 For large file transfer, bandwidth is critical
 For small messages (HTTP, NFS, etc.), latency is
critical
 Variance in latency (jitter) can also affect some
applications (e.g., audio/video conferencing)
51
Chapter
1
Delay X Bandwidth
 How many bits the sender must transmit
before the first bit arrives at the receiver if the
sender keeps the pipe full
 Takes another one-way latency to receive a
response from the receiver
 If the sender does not fill the pipe—send a
whole delay × bandwidth product’s worth of
data before it stops to wait for a signal—the
sender will not fully utilize the network
52
Chapter
1
Delay X Bandwidth
 Infinite bandwidth
 RTT dominates
 Throughput = TransferSize / TransferTime
 TransferTime = RTT + 1/Bandwidth x
TransferSize
 Its all relative
 1-MB file to 1-Gbps link looks like a 1-KB
packet to 1-Mbps link
53
Chapter
1
Relationship between bandwidth and latency
A 1-MB file would fill the 1-Mbps link 80 times,
but only fill the 1-Gbps link 1/12 of one time
54
Chapter
1
Summary
 We have identified what we expect from a computer
network
 We have defined a layered architecture for computer
network that will serve as a blueprint for our design
 We have discussed the socket interface which will be
used by applications for invoking the services of the
network subsystem
 We have discussed two performance metrics using
which we can analyze the performance of computer
networks

More Related Content

Similar to MK-PPT Chapter 1.ppt computer networks foundation

Lecture 1 networking &amp; internetworking
Lecture 1 networking &amp; internetworkingLecture 1 networking &amp; internetworking
Lecture 1 networking &amp; internetworkingMd. Mashiur Rahman
 
Fundamentals of Networking
Fundamentals of NetworkingFundamentals of Networking
Fundamentals of NetworkingIsrael Marcus
 
Osi , tcp/ip protocol and Addressing
Osi , tcp/ip protocol and Addressing Osi , tcp/ip protocol and Addressing
Osi , tcp/ip protocol and Addressing marwan aldulaimy
 
Ccent notes part 1
Ccent notes part 1Ccent notes part 1
Ccent notes part 1ahmady
 
Unit_I_Computer Networks 4.pdf
Unit_I_Computer Networks 4.pdfUnit_I_Computer Networks 4.pdf
Unit_I_Computer Networks 4.pdfArumugam90
 
OSI and TCPIP Model
OSI and TCPIP ModelOSI and TCPIP Model
OSI and TCPIP ModelTapan Khilar
 
OSI (open systems interconnection) Model
OSI (open systems interconnection) ModelOSI (open systems interconnection) Model
OSI (open systems interconnection) ModelNetwax Lab
 
Communication Networks 1
Communication Networks 1Communication Networks 1
Communication Networks 1mahamed Ayesh
 
computer network and chapter 7 OSI layers.pptx
computer network and chapter 7 OSI layers.pptxcomputer network and chapter 7 OSI layers.pptx
computer network and chapter 7 OSI layers.pptxgadisaAdamu
 
Intrebari si raspunsuri CCNA1
Intrebari si raspunsuri CCNA1Intrebari si raspunsuri CCNA1
Intrebari si raspunsuri CCNA1Adrian Preda
 
Computer networks--networks
Computer networks--networksComputer networks--networks
Computer networks--networksNoor Azura Adnan
 
Reference models in Networks: OSI & TCP/IP
Reference models in Networks: OSI & TCP/IPReference models in Networks: OSI & TCP/IP
Reference models in Networks: OSI & TCP/IPMukesh Chinta
 
Unit 3 Assignment 1 Osi Model
Unit 3 Assignment 1 Osi ModelUnit 3 Assignment 1 Osi Model
Unit 3 Assignment 1 Osi ModelJacqueline Thomas
 
Osi reference model and the tcp
Osi reference model and the tcpOsi reference model and the tcp
Osi reference model and the tcpAgrippa Mungazi
 
Class_notes_InternetTechnology
Class_notes_InternetTechnologyClass_notes_InternetTechnology
Class_notes_InternetTechnologyGulrez Khan
 

Similar to MK-PPT Chapter 1.ppt computer networks foundation (20)

Lecture 1 networking &amp; internetworking
Lecture 1 networking &amp; internetworkingLecture 1 networking &amp; internetworking
Lecture 1 networking &amp; internetworking
 
Fundamentals of Networking
Fundamentals of NetworkingFundamentals of Networking
Fundamentals of Networking
 
Osi , tcp/ip protocol and Addressing
Osi , tcp/ip protocol and Addressing Osi , tcp/ip protocol and Addressing
Osi , tcp/ip protocol and Addressing
 
Week 2
Week 2Week 2
Week 2
 
chapter 4.pptx
chapter 4.pptxchapter 4.pptx
chapter 4.pptx
 
Ccent notes part 1
Ccent notes part 1Ccent notes part 1
Ccent notes part 1
 
OSI model.pptx
OSI model.pptxOSI model.pptx
OSI model.pptx
 
Unit_I_Computer Networks 4.pdf
Unit_I_Computer Networks 4.pdfUnit_I_Computer Networks 4.pdf
Unit_I_Computer Networks 4.pdf
 
OSI and TCPIP Model
OSI and TCPIP ModelOSI and TCPIP Model
OSI and TCPIP Model
 
OSI (open systems interconnection) Model
OSI (open systems interconnection) ModelOSI (open systems interconnection) Model
OSI (open systems interconnection) Model
 
Communication Networks 1
Communication Networks 1Communication Networks 1
Communication Networks 1
 
computer network and chapter 7 OSI layers.pptx
computer network and chapter 7 OSI layers.pptxcomputer network and chapter 7 OSI layers.pptx
computer network and chapter 7 OSI layers.pptx
 
computer network OSI layer
computer network OSI layercomputer network OSI layer
computer network OSI layer
 
Intrebari si raspunsuri CCNA1
Intrebari si raspunsuri CCNA1Intrebari si raspunsuri CCNA1
Intrebari si raspunsuri CCNA1
 
Computer networks--networks
Computer networks--networksComputer networks--networks
Computer networks--networks
 
Reference models in Networks: OSI & TCP/IP
Reference models in Networks: OSI & TCP/IPReference models in Networks: OSI & TCP/IP
Reference models in Networks: OSI & TCP/IP
 
Unit 3 Assignment 1 Osi Model
Unit 3 Assignment 1 Osi ModelUnit 3 Assignment 1 Osi Model
Unit 3 Assignment 1 Osi Model
 
Week2 lec1-bscs1
Week2 lec1-bscs1Week2 lec1-bscs1
Week2 lec1-bscs1
 
Osi reference model and the tcp
Osi reference model and the tcpOsi reference model and the tcp
Osi reference model and the tcp
 
Class_notes_InternetTechnology
Class_notes_InternetTechnologyClass_notes_InternetTechnology
Class_notes_InternetTechnology
 

Recently uploaded

Sanyam Choudhary Chemistry practical.pdf
Sanyam Choudhary Chemistry practical.pdfSanyam Choudhary Chemistry practical.pdf
Sanyam Choudhary Chemistry practical.pdfsanyamsingh5019
 
18-04-UA_REPORT_MEDIALITERAСY_INDEX-DM_23-1-final-eng.pdf
18-04-UA_REPORT_MEDIALITERAСY_INDEX-DM_23-1-final-eng.pdf18-04-UA_REPORT_MEDIALITERAСY_INDEX-DM_23-1-final-eng.pdf
18-04-UA_REPORT_MEDIALITERAСY_INDEX-DM_23-1-final-eng.pdfssuser54595a
 
Q4-W6-Restating Informational Text Grade 3
Q4-W6-Restating Informational Text Grade 3Q4-W6-Restating Informational Text Grade 3
Q4-W6-Restating Informational Text Grade 3JemimahLaneBuaron
 
Grant Readiness 101 TechSoup and Remy Consulting
Grant Readiness 101 TechSoup and Remy ConsultingGrant Readiness 101 TechSoup and Remy Consulting
Grant Readiness 101 TechSoup and Remy ConsultingTechSoup
 
URLs and Routing in the Odoo 17 Website App
URLs and Routing in the Odoo 17 Website AppURLs and Routing in the Odoo 17 Website App
URLs and Routing in the Odoo 17 Website AppCeline George
 
Hybridoma Technology ( Production , Purification , and Application )
Hybridoma Technology  ( Production , Purification , and Application  ) Hybridoma Technology  ( Production , Purification , and Application  )
Hybridoma Technology ( Production , Purification , and Application ) Sakshi Ghasle
 
Employee wellbeing at the workplace.pptx
Employee wellbeing at the workplace.pptxEmployee wellbeing at the workplace.pptx
Employee wellbeing at the workplace.pptxNirmalaLoungPoorunde1
 
“Oh GOSH! Reflecting on Hackteria's Collaborative Practices in a Global Do-It...
“Oh GOSH! Reflecting on Hackteria's Collaborative Practices in a Global Do-It...“Oh GOSH! Reflecting on Hackteria's Collaborative Practices in a Global Do-It...
“Oh GOSH! Reflecting on Hackteria's Collaborative Practices in a Global Do-It...Marc Dusseiller Dusjagr
 
The Most Excellent Way | 1 Corinthians 13
The Most Excellent Way | 1 Corinthians 13The Most Excellent Way | 1 Corinthians 13
The Most Excellent Way | 1 Corinthians 13Steve Thomason
 
Industrial Policy - 1948, 1956, 1973, 1977, 1980, 1991
Industrial Policy - 1948, 1956, 1973, 1977, 1980, 1991Industrial Policy - 1948, 1956, 1973, 1977, 1980, 1991
Industrial Policy - 1948, 1956, 1973, 1977, 1980, 1991RKavithamani
 
Contemporary philippine arts from the regions_PPT_Module_12 [Autosaved] (1).pptx
Contemporary philippine arts from the regions_PPT_Module_12 [Autosaved] (1).pptxContemporary philippine arts from the regions_PPT_Module_12 [Autosaved] (1).pptx
Contemporary philippine arts from the regions_PPT_Module_12 [Autosaved] (1).pptxRoyAbrique
 
1029-Danh muc Sach Giao Khoa khoi 6.pdf
1029-Danh muc Sach Giao Khoa khoi  6.pdf1029-Danh muc Sach Giao Khoa khoi  6.pdf
1029-Danh muc Sach Giao Khoa khoi 6.pdfQucHHunhnh
 
microwave assisted reaction. General introduction
microwave assisted reaction. General introductionmicrowave assisted reaction. General introduction
microwave assisted reaction. General introductionMaksud Ahmed
 
BASLIQ CURRENT LOOKBOOK LOOKBOOK(1) (1).pdf
BASLIQ CURRENT LOOKBOOK  LOOKBOOK(1) (1).pdfBASLIQ CURRENT LOOKBOOK  LOOKBOOK(1) (1).pdf
BASLIQ CURRENT LOOKBOOK LOOKBOOK(1) (1).pdfSoniaTolstoy
 
Presentation by Andreas Schleicher Tackling the School Absenteeism Crisis 30 ...
Presentation by Andreas Schleicher Tackling the School Absenteeism Crisis 30 ...Presentation by Andreas Schleicher Tackling the School Absenteeism Crisis 30 ...
Presentation by Andreas Schleicher Tackling the School Absenteeism Crisis 30 ...EduSkills OECD
 
Interactive Powerpoint_How to Master effective communication
Interactive Powerpoint_How to Master effective communicationInteractive Powerpoint_How to Master effective communication
Interactive Powerpoint_How to Master effective communicationnomboosow
 
Measures of Central Tendency: Mean, Median and Mode
Measures of Central Tendency: Mean, Median and ModeMeasures of Central Tendency: Mean, Median and Mode
Measures of Central Tendency: Mean, Median and ModeThiyagu K
 
POINT- BIOCHEMISTRY SEM 2 ENZYMES UNIT 5.pptx
POINT- BIOCHEMISTRY SEM 2 ENZYMES UNIT 5.pptxPOINT- BIOCHEMISTRY SEM 2 ENZYMES UNIT 5.pptx
POINT- BIOCHEMISTRY SEM 2 ENZYMES UNIT 5.pptxSayali Powar
 
Kisan Call Centre - To harness potential of ICT in Agriculture by answer farm...
Kisan Call Centre - To harness potential of ICT in Agriculture by answer farm...Kisan Call Centre - To harness potential of ICT in Agriculture by answer farm...
Kisan Call Centre - To harness potential of ICT in Agriculture by answer farm...Krashi Coaching
 

Recently uploaded (20)

Sanyam Choudhary Chemistry practical.pdf
Sanyam Choudhary Chemistry practical.pdfSanyam Choudhary Chemistry practical.pdf
Sanyam Choudhary Chemistry practical.pdf
 
18-04-UA_REPORT_MEDIALITERAСY_INDEX-DM_23-1-final-eng.pdf
18-04-UA_REPORT_MEDIALITERAСY_INDEX-DM_23-1-final-eng.pdf18-04-UA_REPORT_MEDIALITERAСY_INDEX-DM_23-1-final-eng.pdf
18-04-UA_REPORT_MEDIALITERAСY_INDEX-DM_23-1-final-eng.pdf
 
Q4-W6-Restating Informational Text Grade 3
Q4-W6-Restating Informational Text Grade 3Q4-W6-Restating Informational Text Grade 3
Q4-W6-Restating Informational Text Grade 3
 
Grant Readiness 101 TechSoup and Remy Consulting
Grant Readiness 101 TechSoup and Remy ConsultingGrant Readiness 101 TechSoup and Remy Consulting
Grant Readiness 101 TechSoup and Remy Consulting
 
URLs and Routing in the Odoo 17 Website App
URLs and Routing in the Odoo 17 Website AppURLs and Routing in the Odoo 17 Website App
URLs and Routing in the Odoo 17 Website App
 
Hybridoma Technology ( Production , Purification , and Application )
Hybridoma Technology  ( Production , Purification , and Application  ) Hybridoma Technology  ( Production , Purification , and Application  )
Hybridoma Technology ( Production , Purification , and Application )
 
Employee wellbeing at the workplace.pptx
Employee wellbeing at the workplace.pptxEmployee wellbeing at the workplace.pptx
Employee wellbeing at the workplace.pptx
 
“Oh GOSH! Reflecting on Hackteria's Collaborative Practices in a Global Do-It...
“Oh GOSH! Reflecting on Hackteria's Collaborative Practices in a Global Do-It...“Oh GOSH! Reflecting on Hackteria's Collaborative Practices in a Global Do-It...
“Oh GOSH! Reflecting on Hackteria's Collaborative Practices in a Global Do-It...
 
Código Creativo y Arte de Software | Unidad 1
Código Creativo y Arte de Software | Unidad 1Código Creativo y Arte de Software | Unidad 1
Código Creativo y Arte de Software | Unidad 1
 
The Most Excellent Way | 1 Corinthians 13
The Most Excellent Way | 1 Corinthians 13The Most Excellent Way | 1 Corinthians 13
The Most Excellent Way | 1 Corinthians 13
 
Industrial Policy - 1948, 1956, 1973, 1977, 1980, 1991
Industrial Policy - 1948, 1956, 1973, 1977, 1980, 1991Industrial Policy - 1948, 1956, 1973, 1977, 1980, 1991
Industrial Policy - 1948, 1956, 1973, 1977, 1980, 1991
 
Contemporary philippine arts from the regions_PPT_Module_12 [Autosaved] (1).pptx
Contemporary philippine arts from the regions_PPT_Module_12 [Autosaved] (1).pptxContemporary philippine arts from the regions_PPT_Module_12 [Autosaved] (1).pptx
Contemporary philippine arts from the regions_PPT_Module_12 [Autosaved] (1).pptx
 
1029-Danh muc Sach Giao Khoa khoi 6.pdf
1029-Danh muc Sach Giao Khoa khoi  6.pdf1029-Danh muc Sach Giao Khoa khoi  6.pdf
1029-Danh muc Sach Giao Khoa khoi 6.pdf
 
microwave assisted reaction. General introduction
microwave assisted reaction. General introductionmicrowave assisted reaction. General introduction
microwave assisted reaction. General introduction
 
BASLIQ CURRENT LOOKBOOK LOOKBOOK(1) (1).pdf
BASLIQ CURRENT LOOKBOOK  LOOKBOOK(1) (1).pdfBASLIQ CURRENT LOOKBOOK  LOOKBOOK(1) (1).pdf
BASLIQ CURRENT LOOKBOOK LOOKBOOK(1) (1).pdf
 
Presentation by Andreas Schleicher Tackling the School Absenteeism Crisis 30 ...
Presentation by Andreas Schleicher Tackling the School Absenteeism Crisis 30 ...Presentation by Andreas Schleicher Tackling the School Absenteeism Crisis 30 ...
Presentation by Andreas Schleicher Tackling the School Absenteeism Crisis 30 ...
 
Interactive Powerpoint_How to Master effective communication
Interactive Powerpoint_How to Master effective communicationInteractive Powerpoint_How to Master effective communication
Interactive Powerpoint_How to Master effective communication
 
Measures of Central Tendency: Mean, Median and Mode
Measures of Central Tendency: Mean, Median and ModeMeasures of Central Tendency: Mean, Median and Mode
Measures of Central Tendency: Mean, Median and Mode
 
POINT- BIOCHEMISTRY SEM 2 ENZYMES UNIT 5.pptx
POINT- BIOCHEMISTRY SEM 2 ENZYMES UNIT 5.pptxPOINT- BIOCHEMISTRY SEM 2 ENZYMES UNIT 5.pptx
POINT- BIOCHEMISTRY SEM 2 ENZYMES UNIT 5.pptx
 
Kisan Call Centre - To harness potential of ICT in Agriculture by answer farm...
Kisan Call Centre - To harness potential of ICT in Agriculture by answer farm...Kisan Call Centre - To harness potential of ICT in Agriculture by answer farm...
Kisan Call Centre - To harness potential of ICT in Agriculture by answer farm...
 

MK-PPT Chapter 1.ppt computer networks foundation

  • 1. 1 Chapter 1 Foundation Computer Networks: A Systems Approach, 5e Larry L. Peterson and Bruce S. Davie Copyright © 2010, Elsevier Inc. All rights Reserved
  • 2. 2 Chapter 1 Problems  How to build a scalable network that will support different applications?  What is a computer network?  How is a computer network different from other types of networks?  What is a computer network architecture?
  • 3. 3 Chapter 1 Chapter Outline  Applications  Requirements  Network Architecture  Implementing Network Software  Performance
  • 4. 4 Chapter 1 Chapter Goal  Exploring the requirements that different applications and different communities place on the computer network  Introducing the idea of network architecture  Introducing some key elements in implementing Network Software  Define key metrics that will be used to evaluate the performance of computer network
  • 5. 5 Chapter 1 Applications  Most people know about the Internet (a computer network) through applications  World Wide Web  Email  Online Social Network  Streaming Audio Video  File Sharing  Instant Messaging  …
  • 6. 6 Chapter 1 Example of an application A multimedia application including video-conferencing
  • 7. 7 Chapter 1 Application Protocol  URL  Uniform Resource Locater  http://www.cs.princeton.edu/~llp/index.html  HTTP  Hyper Text Transfer Protocol  TCP  Transmission Control Protocol  17 messages for one URL request  6 to find the IP (Internet Protocol) address  3 for connection establishment of TCP  4 for HTTP request and acknowledgement  Request: I got your request and I will send the data  Reply: Here is the data you requested; I got the data  4 messages for tearing down TCP connection
  • 8. 8 Chapter 1 Requirements  Application Programmer  List the services that his application needs: delay bounded delivery of data  Network Designer  Design a cost-effective network with sharable resources  Network Provider  List the characteristics of a system that is easy to manage
  • 9. 9 Chapter 1 Connectivity  Need to understand the following terminologies  Scale  Link Nodes  Point-to-point  Multiple access  Switched Network  Circuit Switched  Packet Switched  Packet, message  Store-and-forward Direct Links (a) Point-to-point (b) Multiple access
  • 10. 10 Chapter 1 Connectivity  Terminologies (contd.)  Cloud  Hosts  Switches  internetwork  Router/gateway  Host-to-host connectivity  Address  Routing  Unicast/broadcast/multicast (a) A switched network (b) Interconnection of networks (a) (b)
  • 11. 11 Chapter 1 Cost-Effective Resource Sharing  Resource: links and nodes  How to share a link?  Multiplexing  De-multiplexing  Synchronous Time-division Multiplexing  Time slots/data transmitted in predetermined slots Multiplexing multiple logical flows over a single physical link
  • 12. 12 Chapter 1 Cost-Effective Resource Sharing  FDM: Frequency Division Multiplexing  Statistical Multiplexing  Data is transmitted based on demand of each flow.  What is a flow?  Packets vs. Messages  FIFO, Round-Robin, Priorities (Quality-of- Service (QoS))  Congested?  LAN, MAN, WAN  SAN (System Area Networks A switch multiplexing packets from multiple sources onto one shared link
  • 13. 13 Chapter 1 Support for Common Services  Logical Channels  Application-to-Application communication path or a pipe Process communicating over an abstract channel
  • 14. 14 Chapter 1 Common Communication Patterns  Client/Server  Two types of communication channel  Request/Reply Channels  Message Stream Channels
  • 15. 15 Chapter 1 Request/Reply Channels  The request/reply channel would be used by the file transfer and digital library applications. It would guarantee that every message sent by one side is received by the other side and that only one copy of each message is delivered.  The request/reply channel might also protect the privacy and integrity of the data that flows over it, so that unauthorized parties cannot read or modify the data being exchanged between the client and server processes.
  • 16. 16 Chapter 1 Message Stream Channels  could be used by both the video-on- demand and videoconferencing.  might not need to guarantee that all messages are delivered, since a video application can operate adequately even if some frames are not received.  It need to ensure that are delivered arrive in the same order in which they were sent.  It might want to ensure the privacy and integrity of the video data.  Finally, it might need to support multicast, so that multiple parties can participate in the teleconference or view the video.
  • 17. 17 Chapter 1 Reliability Network should hide the errors to be more reliable. ** Types of Errors:  Bits are lost  Bit errors (1 to a 0, and vice versa)  Burst errors – several consecutive errors  Packets are lost (Congestion)  Links and Node failures  Messages are delayed  Messages are delivered out-of-order  Third parties eavesdrop
  • 19. 19 Chapter 1 Network Architecture Layered system with alternative abstractions available at a given layer
  • 20. 20 Chapter 1 Protocols  Protocol defines the interfaces between the layers in the same system and with the layers of peer system  Building blocks of a network architecture  Each protocol object has two different interfaces  service interface: operations on this protocol  peer-to-peer interface: messages exchanged with peer  Term “protocol” is overloaded  specification of peer-to-peer interface  module that implements this interface
  • 22. 22 Chapter 1 Protocols  Protocol Specification: prose, pseudo-code, state transition diagram  Interoperable: when two or more protocols that implement the specification accurately  IETF: Internet Engineering Task Force
  • 23. 23 Chapter 1 Protocol Graph Example of a protocol graph nodes are the protocols and links the “depends-on” relation RRP: Request/Reply Protocol MSP: Message Stream Protocol HHP: Host-to-Host Protocol
  • 24. 24 Chapter 1 Encapsulation High-level messages are encapsulated inside of low-level messages
  • 25. 25 Chapter 1 OSI Architecture The OSI 7-layer Model OSI – Open Systems Interconnection
  • 26. 26 Chapter 1 Description of Layers  Physical Layer  Handles the transmission of raw bits over a communication link  Data Link Layer  Collects a stream of bits into a larger aggregate called a frame  Network adaptor along with device driver in OS implement the protocol in this layer  Frames are actually delivered to hosts  Network Layer  Handles routing among nodes within a packet-switched network  Unit of data exchanged between nodes in this layer is called a packet The lower three layers are implemented on all network nodes
  • 27. 27 Chapter 1 Description of Layers  Transport Layer  Implements a process-to-process channel  Unit of data exchanges in this layer is called a message  Session Layer  Provides a name space that is used to tie together the potentially different transport streams that are part of a single application  Presentation Layer  Concerned about the format of data exchanged between peers  Application Layer  Standardize common type of exchanges The transport layer and the higher layers typically run only on end- hosts and not on the intermediate switches and routers
  • 28. 28 Chapter 1 Internet Architecture Internet Protocol Graph Alternative view of the Internet architecture. The “Network” layer shown here is sometimes referred to as the “sub-network” or “link” layer.
  • 29. 29 Chapter 1 Internet Architecture  Defined by IETF  Three main features  Does not imply strict layering. The application is free to bypass the defined transport layers and to directly use IP or other underlying networks  An hour-glass shape – wide at the top, narrow in the middle and wide at the bottom. IP serves as the focal point for the architecture  In order for a new protocol to be officially included in the architecture, there needs to be both a protocol specification and at least one (and preferably two) representative implementations of the specification
  • 30. 30 Chapter 1 Application Programming Interface  Interface exported by the network  Since most network protocols are implemented (those in the high protocol stack) in software and nearly all computer systems implement their network protocols as part of the operating system, when we refer to the interface “exported by the network”, we are generally referring to the interface that the OS provides to its networking subsystem  The interface is called the network Application Programming Interface (API)
  • 31. 31 Chapter 1 Application Programming Interface (Sockets)  Socket Interface was originally provided by the Berkeley distribution of Unix - Now supported in virtually all operating systems  Each protocol provides a certain set of services, and the API provides a syntax by which those services can be invoked in this particular OS
  • 32. 32 Chapter 1 Socket  What is a socket?  The point where a local application process attaches to the network  An interface between an application and the network  An application creates the socket  The interface defines operations for  Creating a socket  Attaching a socket to the network  Sending and receiving messages through the socket  Closing the socket
  • 33. 33 Chapter 1 Socket  Socket Family  PF_INET denotes the Internet family  PF_UNIX denotes the Unix pipe facility  PF_PACKET denotes direct access to the network interface (i.e., it bypasses the TCP/IP protocol stack)  Socket Type  SOCK_STREAM is used to denote a byte stream  SOCK_DGRAM is an alternative that denotes a message oriented service, such as that provided by UDP
  • 34. 34 Chapter 1 Creating a Socket int sockfd = socket(address_family, type, protocol);  The socket number returned is the socket descriptor for the newly created socket  int sockfd = socket (PF_INET, SOCK_STREAM, 0);  int sockfd = socket (PF_INET, SOCK_DGRAM, 0); The combination of PF_INET and SOCK_STREAM implies TCP
  • 35. 35 Chapter 1 Creating a Socket EXAMPLE  #include <sys/socket.h>  int main() {  int sockfd = socket(AF_INET, SOCK_STREAM, 0);  if (sockfd == -1) {  // Handle error, e.g., print an error message  perror("Socket creation failed");  return -1;  }  // Continue with socket usage...  return 0;  } In this example, a TCP socket (SOCK_STREAM) using the IPv4 address family (AF_INET) is created. Error handling is done using perror to print an error message if the socket creation fails.
  • 36. 36 Chapter 1 Client-Server Model with TCP Server:  Passive open  Prepares to accept connection, does not actually establish a connection To do these actions, the Server invokes the followings: int bind (int socket, struct sockaddr *address, int addr_len) binds the newly created socket to the specified address (IP+Port). int listen (int socket, int backlog) defines how many connections can be pending on the specified socket. int accept (int socket, struct sockaddr *address, int *addr_len) accept operation carries out the passive open.
  • 37. 37 Chapter 1 Client-Serve Model with TCP Bind  Binds the newly created socket to the specified address i.e. the network address of the local participant (the server)  Address is a data structure which combines IP and port Listen  Defines how many connections can be pending on the specified socket
  • 38. 38 Chapter 1 Client-Serve Model with TCP Accept  Carries out the passive open  Blocking operation  Does not return until a remote participant has established a connection  When it does, it returns a new socket that corresponds to the new established connection and the address argument contains the remote participant’s address
  • 39. 39 Chapter 1 Client-Serve Model with TCP Client  Application performs active open  It says who it wants to communicate with Client invokes int connect (int socket, struct sockaddr *address, int addr_len) Connect  Does not return until TCP has successfully established a connection at which application is free to begin sending data  Address contains remote machine’s address
  • 40. 40 Chapter 1 Client-Serve Model with TCP In practice  The client usually specifies only remote participant’s address and let’s the system fill in the local information  Whereas a server usually listens for messages on a well-known port  A client does not care which port it uses for itself, the OS simply selects an unused one
  • 41. 41 Chapter 1 Client-Serve Model with TCP Once a connection is established, the application process invokes two operation int send (int socket, char *msg, int msg_len, int flags) sends the given message over the specified socket int recv (int socket, char *buff, int buff_len, int flags) receives a message from the specified socket into the given buffer. Both operations take a set of flags that control certain details of the operation.
  • 42. 42 Chapter 1 Example Application: Client #include <stdio.h> #include <sys/types.h> #include <sys/socket.h> #include <netinet/in.h> #include <netdb.h> #define SERVER_PORT 5432 #define MAX_LINE 256 int main(int argc, char * argv[]) { FILE *fp; struct hostent *hp; struct sockaddr_in sin; char *host; char buf[MAX_LINE]; int s; int len; if (argc==2) { host = argv[1]; } else { fprintf(stderr, "usage: simplex-talk hostn"); exit(1); }
  • 43. 43 Chapter 1 Example Application: Client /* translate host name into peer’s IP address */ hp = gethostbyname(host); if (!hp) { fprintf(stderr, "simplex-talk: unknown host: %sn", host); exit(1); } /* build address data structure */ bzero((char *)&sin, sizeof(sin)); sin.sin_family = AF_INET; bcopy(hp->h_addr, (char *)&sin.sin_addr, hp->h_length); sin.sin_port = htons(SERVER_PORT); /* active open */ if ((s = socket(PF_INET, SOCK_STREAM, 0)) < 0) { perror("simplex-talk: socket"); exit(1); } if (connect(s, (struct sockaddr *)&sin, sizeof(sin)) < 0) { perror("simplex-talk: connect"); close(s); exit(1); } /* main loop: get and send lines of text */ while (fgets(buf, sizeof(buf), stdin)) { buf[MAX_LINE-1] = ’0’; len = strlen(buf) + 1; send(s, buf, len, 0); } }
  • 44. 44 Chapter 1 Example Application: Server #include <stdio.h> #include <sys/types.h> #include <sys/socket.h> #include <netinet/in.h> #include <netdb.h> #define SERVER_PORT 5432 #define MAX_PENDING 5 #define MAX_LINE 256 int main() { struct sockaddr_in sin; char buf[MAX_LINE]; int len; int s, new_s; /* build address data structure */ bzero((char *)&sin, sizeof(sin)); sin.sin_family = AF_INET; sin.sin_addr.s_addr = INADDR_ANY; sin.sin_port = htons(SERVER_PORT); /* setup passive open */ if ((s = socket(PF_INET, SOCK_STREAM, 0)) < 0) { perror("simplex-talk: socket"); exit(1); }
  • 45. 45 Chapter 1 Example Application: Server if ((bind(s, (struct sockaddr *)&sin, sizeof(sin))) < 0) { perror("simplex-talk: bind"); exit(1); } listen(s, MAX_PENDING); /* wait for connection, then receive and print text */ while(1) { if ((new_s = accept(s, (struct sockaddr *)&sin, &len)) < 0) { perror("simplex-talk: accept"); exit(1); } while (len = recv(new_s, buf, sizeof(buf), 0)) fputs(buf, stdout); close(new_s); } }
  • 46. 46 Chapter 1 Performance  Bandwidth  Width of the frequency band  Number of bits per second that can be transmitted over a communication link  1 Mbps: 1 x 106 bits/second = 1x220 bits/sec  1 x 10-6 seconds to transmit each bit or imagine that a timeline, now each bit occupies 1 micro second space.  On a 2 Mbps link the width is 0.5 micro second.  Smaller the width more will be transmission per unit time.
  • 47. 47 Chapter 1 Bandwidth Bits transmitted at a particular bandwidth can be regarded as having some width: (a) bits transmitted at 1Mbps (each bit 1 μs wide); (b) bits transmitted at 2Mbps (each bit 0.5 μs wide).
  • 48. 48 Chapter 1 Performance  Latency = Propagation + transmit + queue  Propagation = distance/speed of light  Transmit = size/bandwidth  One bit transmission => propagation is important  Large bytes transmission => bandwidth is important
  • 49. 49 Chapter 1 Delay X Bandwidth  We think the channel between a pair of processes as a hollow pipe  Latency (delay) length of the pipe and bandwidth the width of the pipe  Delay of 50 ms and bandwidth of 45 Mbps  50 x 10-3 seconds x 45 x 106 bits/second  2.25 x 106 bits = 280 KB data. Network as a pipe
  • 50. 50 Chapter 1 Delay X Bandwidth  Relative importance of bandwidth and latency depends on application  For large file transfer, bandwidth is critical  For small messages (HTTP, NFS, etc.), latency is critical  Variance in latency (jitter) can also affect some applications (e.g., audio/video conferencing)
  • 51. 51 Chapter 1 Delay X Bandwidth  How many bits the sender must transmit before the first bit arrives at the receiver if the sender keeps the pipe full  Takes another one-way latency to receive a response from the receiver  If the sender does not fill the pipe—send a whole delay × bandwidth product’s worth of data before it stops to wait for a signal—the sender will not fully utilize the network
  • 52. 52 Chapter 1 Delay X Bandwidth  Infinite bandwidth  RTT dominates  Throughput = TransferSize / TransferTime  TransferTime = RTT + 1/Bandwidth x TransferSize  Its all relative  1-MB file to 1-Gbps link looks like a 1-KB packet to 1-Mbps link
  • 53. 53 Chapter 1 Relationship between bandwidth and latency A 1-MB file would fill the 1-Mbps link 80 times, but only fill the 1-Gbps link 1/12 of one time
  • 54. 54 Chapter 1 Summary  We have identified what we expect from a computer network  We have defined a layered architecture for computer network that will serve as a blueprint for our design  We have discussed the socket interface which will be used by applications for invoking the services of the network subsystem  We have discussed two performance metrics using which we can analyze the performance of computer networks

Editor's Notes

  1. 23 April 2024
  2. 23 April 2024
  3. 23 April 2024
  4. 23 April 2024
  5. 23 April 2024
  6. 23 April 2024
  7. 23 April 2024
  8. 23 April 2024
  9. 23 April 2024
  10. 23 April 2024
  11. 23 April 2024
  12. 23 April 2024
  13. 23 April 2024
  14. 23 April 2024
  15. 23 April 2024
  16. 23 April 2024
  17. 23 April 2024
  18. 23 April 2024
  19. 23 April 2024
  20. 23 April 2024
  21. 23 April 2024
  22. 23 April 2024
  23. 23 April 2024
  24. 23 April 2024
  25. 23 April 2024
  26. 23 April 2024
  27. 23 April 2024
  28. 23 April 2024
  29. 23 April 2024
  30. 23 April 2024
  31. 23 April 2024
  32. 23 April 2024
  33. 23 April 2024
  34. 23 April 2024
  35. 23 April 2024
  36. 23 April 2024