SlideShare a Scribd company logo
1 of 80
Principles of Network Applications
• At the core of network application development is writing
programs that run on different end systems and communicate
with each other over the network.
• For example, in the Web application there are two distinct
programs that communicate with each other: the browser
program running in the user’s host (desktop, laptop, tablet,
smartphone, and so on); and the Web server program running
in the Web server host.
• As another example, in a P2P file-sharing system there is a
program in each host that participates in the file-sharing
community. In this case, the programs in the various hosts
may be similar or identical.
• Thus, when developing your new application, you need to
write software that will run on multiple end systems.
• This software could be written, for example, in C, Java, or
Python. Importantly, you do not need to write software that
runs on network core devices, such as routers or link-layer
switches.
• Even if you wanted to write application software for these
network-core devices, you wouldn’t be able to do so.
rapid development
and deployment of
a vast array of
network
applications
Processes Communicating
• Processes on two different end systems communicate with
each other by exchanging messages across the computer
network.
• A sending process creates and sends messages into the
network; a receiving process receives these messages and
possibly responds by sending messages back.
Network Application Architectures
Client-server architecture
• An application program running on the local machine
sends a request to another application program is
known as a client, and a program that serves a
request is known as a server.
• For example, when a web server receives a request
from the client host, it responds to the request to the
client host.
• Client/Server network is a network model designed for
the end users called clients, to access the resources such
as songs, video, etc. from a central computer known as
Server.
• The central controller is known as a server while all other
computers in the network are called clients.
• A server is responsible for managing all the resources
such as files, directories, printer, etc.
• All the clients communicate with each other through a
server. For example, if client1 wants to send some data to
client 2, then it first sends the request to the server for
the permission. The server sends the response to the
client 1 to initiate its communication with the client 2.
In the context of a communication session between a
pair of processes, the process that initiates the
communication (that is, initially contacts the other
process at the beginning of the session) is labeled as
the client. The process that waits to be contacted to
begin the session is the server.
Characteristics Of Client-server architecture
• In Client-server architecture, clients do not directly
communicate with each other. For example, in a web
application, two browsers do not directly
communicate with each other.
• A server is fixed, well-known address known as IP
address because the server is always on while the
client can always contact the server by sending a
packet to the sender's IP address.
Advantages Of Client/Server network:
• A Client/Server network contains the centralized
system. Therefore we can back up the data easily.
• A Client/Server network has a dedicated server
that improves the overall performance of the
whole system.
• Security is better in Client/Server network as a
single server administers the shared resources.
• It also increases the speed of the sharing
resources
Disadvantage Of Client-server architecture:
• It is a single-server based architecture which is
incapable of holding all the requests from the clients.
For example, a social networking site can become
overwhelmed when there is only one server exists
P2P (peer-to-peer) architecture:
• It has no dedicated server in a data center. The peers
are the computers which are not owned by the
service provider. Most of the peers reside in the
homes, offices, schools, and universities.
• The peers communicate with each other without
passing the information through a dedicated server,
this architecture is known as peer-to-peer
architecture.
• The applications based on P2P architecture includes
file sharing and internet telephony.
• Peer-To-Peer network is a network in which all the
computers are linked together with equal privilege
and responsibilities for processing the data.
• Peer-To-Peer network is useful for small
environments, usually up to 10 computers.
• Peer-To-Peer network has no dedicated server.
• Special permissions are assigned to each computer
for sharing the resources, but this can lead to a
problem if the computer with the resource is down
Advantages Of Peer-To-Peer Network
• It is less costly as it does not contain any dedicated
server.
• If one computer stops working but, other computers
will not stop working.
• It is easy to set up and maintain as each computer
manages itself.
Disadvantages Of Peer-To-Peer Network:
• In the case of Peer-To-Peer network, it does not contain
the centralized system . Therefore, it cannot back up the
data as the data is different in different locations.
Features of P2P architecture
• Self scalability: In a file sharing system, although
each peer generates a workload by requesting the
files, each peer also adds a service capacity by
distributing the files to the peer.
• Cost-effective: It is cost-effective as it does not
require significant server infrastructure and server
bandwidth.
Client and Server Processes
• A network application consists of a pair of processes that
send the messages to each other over a network.
• In P2P file-sharing system, a file is transferred from a
process in one peer to a process in another peer. We
label one of the two processes as the client and another
process as the server.
• With P2P file sharing, the peer which is downloading the
file is known as a client, and the peer which is uploading
the file is known as a server. However, we have observed
in some applications such as P2P file sharing; a process
can be both as a client and server.
Future P2P applications face three major challenges:
• ISP Friendly: Most residential ISPs have been dimensioned for
“asymmetrical” bandwidth usage, that is, for much more
down stream than upstream traffic.
• But P2P video streaming and file distribution applications shift
upstream traffic from servers to residential ISPs, thereby
putting significant stress on the ISPs.
• Security: Because of their highly distributed and open nature,
P2P applications can be a challenge to secure.
• Incentives: The success of future P2P applications also
depends on convincing users to volunteer bandwidth, storage
etc..
INTERFACE BETWEEN THE PROCESS AND THE
COMPUTER NETWORK
• Most applications consist of pairs of communicating
processes, with the two processes in each pair sending
messages to each other.
• Any message sent from one process to another must go
through the underlying network. A process sends messages
into, and receives messages from, the network through a
software interface called a socket
• Let’s consider an analogy to help us understand processes and
sockets. A process is analogous to a house and its socket is
analogous to its door.
• When a process wants to send a message to another process on
another host, it shoves the message out its door (socket).
• This sending process assumes that there is a transportation
infrastructure on the other side of its door that will transport the
message to the door of the destination process.
• Once the message arrives at the destination host, the message
passes through the receiving process’s door (socket), and the
receiving process then acts on the message
Process --- House, Socket ---Door
• A process sends messages into, and receives messages from,
the network through a software interface called a socket.
• It is also referred to as the Application Programming Interface
(API) between the application and the network, since the
socket is the programming interface with which network
applications are built.
• The application at the sending side pushes messages through
the socket. At the other side of the socket, the transport-layer
protocol has the responsibility of getting the messages to the
socket of the receiving process.
Addressing Processes
Transport Services Available to Applications
• We can broadly classify the possible services
along four dimensions:
• Reliable data transfer,
• Throughput,
• Timing,
• Security.
Reliable Data Transfer
• Packets can get lost within a computer network. For example, a
packet can overflow a buffer in a router, or can be discarded by a
host or router after having some of its bits corrupted.
• For many applications—such as electronic mail, file transfer, remote
host access, Web document transfers, and financial applications—
data loss can have devastating consequences.
• Thus, to support these applications, something has to be done to
guarantee that the data sent by one end of the application is
delivered correctly and completely to the other end of the
application.
• If a protocol provides such a guaranteed data delivery service, it is
said to provide reliable data transfer. One important service that a
transport-layer protocol can potentially provide to an application is
process-to-process reliable data transfer
THROUGHPUT
• Rate at which the sending process can deliver bits to
the receiving process.
• Throughput can change depending on the bandwidth
used by other processes or users
• Transport layer could provide guaranteed throughput
• Application can request specific speed especially for
bandwidth sensitive applications.
• Elastic applications can make use of as much, or as
little, throughput as happens to be available. For
example, e-mail, file transfer, and Web transfers.
Timing
• A transport-layer protocol can also provide timing guarantees. Every
bit that the sender pumps into the socket arrives at the receiver’s
socket no more than 100 msec later.
• Real-time applications, such as Internet telephony, virtual
environments, teleconferencing, and multiplayer games.
• Security:
• Transport protocol can provide an application with one or more
security services.
• For example, in the sending host, a transport protocol can encrypt
all data transmitted by the sending process, and in the receiving
host, the transport-layer protocol can decrypt the data before
delivering the data to the receiving process.
• A transport protocol can provide security services like
confidentiality, data integrity and endpoint authentication.
Transport Services Provided by the
Internet
Application-Layer Protocols
• An application-layer protocol defines how an
application’s processes, running on different end
systems, pass messages to each other. It defines:
• The types of messages exchanged, for example,
request messages and response messages
• The syntax of the various message types, such as the
fields in the message and how the fields are
delineated.
• The semantics of the fields, that is, the meaning of the
information in the fields
• Rules for determining when and how a process sends
messages and responds to messages.
The Web and HTTP
• The Hyper Text Transfer Protocol (HTTP), the Web’s
application-layer protocol, is at the heart of the Web.
• HTTP is implemented in two programs: a client program and a
server program.
• The client program and server program, executing on different
end systems, talk to each other by exchanging HTTP
messages.
• HTTP defines the structure of these messages and how the
client and server exchange the messages.
• A Web page consists of objects. An object is simply a file like
HTML file, a JPEG image, a Java applet, or a video clip—that is
addressable by a single URL.
• When a user requests a Web page (for example, clicks on a
hyperlink), the browser sends HTTP request messages for the
objects in the page to the server.
• The server receives the requests and responds with HTTP
response messages that contain the objects.
• HTTP uses TCP as its underlying transport protocol. The HTTP
client first initiates a TCP connection with the server.
• Once the connection is established, the browser and the
server processes access TCP through their socket interfaces
Non-Persistent and Persistent
Connections
• If Separate TCP connection is used for each
request and response, then the connection is
said to be non persistent.
• If same TCP connection is used for series of
related request and response, then the
connection is said to be persistent.
HTTP with Non-Persistent Connections
HTTP with Persistent Connections
Working of WEB
The response from the web server should look like
below:
HTTP/1.1 200 OK
User-Server Interaction: Cookies
Web Caching
• A Web cache—also called a proxy server—is a
network entity that satisfies HTTP requests on the
behalf of an origin Web server.
• The Web cache has its own disk storage and keeps
copies of recently requested objects in this storage.
• A user’s browser can be configured so that all of the
user’s HTTP requests are first directed to the Web
cache
File Transfer: FTP
• FTP is used for transferring file from one host to another host.
• In order for the user to access the remote account, the user must
provide user identification and a password. After providing this
authorization information, the user can transfer files from the local
file system to the remote file system and vice versa.
• The user first provides the hostname of the remote host, causing
the FTP client process in the local host to establish a TCP connection
with the FTP server process in the remote host.
• The user then provides the user identification and password, which
are sent over the TCP connection as part of FTP commands.
• Once the server has authorized the user, the user copies one or
more files stored in the local file system into the remote file system
(or vice versa).
FTP Commands and Replies
Electronic Mail in the Internet
• E-mail has three major components: user agents, mail servers,
and the Simple Mail Transfer Protocol (SMTP).
• User agents allow users to read, reply to, forward, save, and
compose messages.
• Mail servers form the core of the e-mail infrastructure. Each
recipient has a mailbox located in one of the mail servers. A
typical message starts its journey in the sender’s user agent,
travels to the sender’s mail server, and travels to the
recipient’s mail server, where it is deposited in the recipient’s
mailbox.
• SMTP is the principal application-layer protocol for Internet
electronic mail. It uses the reliable data transfer service of TCP
to transfer mail from the sender’s mail server to the
recipient’s mail server. As with most application-layer
protocols, SMTP has two sides: a client side, which executes
on the sender’s mail server, and a server side, which executes
on the recipient’s mail server.
SMTP
DNS—The Internet’s Directory Service
• DNS stands for Domain Name System.
• DNS is a directory service that provides a mapping
between the name of a host on the network and its
numerical address.
• DNS is required for the functioning of the internet.
• DNS is a service that translates the domain name into IP
addresses.
• For example, suppose the FTP site at EduSoft had an IP
address of 132.147.165.50, most people would reach this
site by specifying ftp.EduSoft.com. Therefore, the domain
name is more reliable than IP address.
Step-01:
A user program sends a name query to a library procedure called the resolver.
Step-02:
Resolver looks up the local domain name cache for a match.
If a match is found, it sends the corresponding IP Address back.
If no match is found, it sends a query to the local DNS server.
Step-03:
DNS server looks up the name.
If a match is found, it returns the corresponding IP Address to the resolver.
If no match is found, the local DNS server sends a query to a higher level DNS server.
This process is continued until a result is returned.
tep-04:
After receiving a response, the DNS client returns the resolution result to the
application.
Peer-to-Peer Applications
• In P2P architecture, there is minimal (or no)
reliance on always-on infrastructure servers.
• Instead, pairs of intermittently connected
hosts, called peers, communicate directly with
each other.
COMPUTER NW2 (1).pptx
COMPUTER NW2 (1).pptx
COMPUTER NW2 (1).pptx
COMPUTER NW2 (1).pptx
COMPUTER NW2 (1).pptx

More Related Content

Similar to COMPUTER NW2 (1).pptx

Introduction to the Internet and Web.pptx
Introduction to the Internet and Web.pptxIntroduction to the Internet and Web.pptx
Introduction to the Internet and Web.pptxhishamousl
 
Computer Network Architecture.pptx
Computer Network Architecture.pptxComputer Network Architecture.pptx
Computer Network Architecture.pptxAshokRachapalli1
 
Module notes artificial intelligence and
Module notes artificial intelligence andModule notes artificial intelligence and
Module notes artificial intelligence andbhagyavantrajapur88
 
1. introduction to computer networks, data communication, types of networks, ...
1. introduction to computer networks, data communication, types of networks, ...1. introduction to computer networks, data communication, types of networks, ...
1. introduction to computer networks, data communication, types of networks, ...DrMuthuKrishnammalP
 
E-Management, Archival and Retrieval of documents/Office Networking System
E-Management, Archival and Retrieval of documents/Office Networking SystemE-Management, Archival and Retrieval of documents/Office Networking System
E-Management, Archival and Retrieval of documents/Office Networking SystemVaughan Olufemi ACIB, AICEN, ANIM
 
server-131210061249-phpapp02.pdf
server-131210061249-phpapp02.pdfserver-131210061249-phpapp02.pdf
server-131210061249-phpapp02.pdfKowsalyaJayakumar2
 
Web-Server & It's Architecture.pptx
Web-Server & It's Architecture.pptxWeb-Server & It's Architecture.pptx
Web-Server & It's Architecture.pptxAlokKumar250045
 
CS-324-6-3 (2).pdf
CS-324-6-3 (2).pdfCS-324-6-3 (2).pdf
CS-324-6-3 (2).pdfRizulthakur2
 
21 Scheme_21EC53_MODULE-5_CCN_Dr. ShivaS
21 Scheme_21EC53_MODULE-5_CCN_Dr. ShivaS21 Scheme_21EC53_MODULE-5_CCN_Dr. ShivaS
21 Scheme_21EC53_MODULE-5_CCN_Dr. ShivaSDr. Shivashankar
 
CS-324-6-3 (1).pdf
CS-324-6-3 (1).pdfCS-324-6-3 (1).pdf
CS-324-6-3 (1).pdfRizulthakur2
 
Standard client server protocol.pptx
Standard client server protocol.pptxStandard client server protocol.pptx
Standard client server protocol.pptxNavanathDarwante1
 

Similar to COMPUTER NW2 (1).pptx (20)

Introduction to the Internet and Web.pptx
Introduction to the Internet and Web.pptxIntroduction to the Internet and Web.pptx
Introduction to the Internet and Web.pptx
 
Computer Network Architecture.pptx
Computer Network Architecture.pptxComputer Network Architecture.pptx
Computer Network Architecture.pptx
 
Module notes artificial intelligence and
Module notes artificial intelligence andModule notes artificial intelligence and
Module notes artificial intelligence and
 
1. introduction to computer networks, data communication, types of networks, ...
1. introduction to computer networks, data communication, types of networks, ...1. introduction to computer networks, data communication, types of networks, ...
1. introduction to computer networks, data communication, types of networks, ...
 
Iso model
Iso modelIso model
Iso model
 
MODULE-5_CCN.pptx
MODULE-5_CCN.pptxMODULE-5_CCN.pptx
MODULE-5_CCN.pptx
 
E-Management, Archival and Retrieval of documents/Office Networking System
E-Management, Archival and Retrieval of documents/Office Networking SystemE-Management, Archival and Retrieval of documents/Office Networking System
E-Management, Archival and Retrieval of documents/Office Networking System
 
lecture-1.1.pptx
lecture-1.1.pptxlecture-1.1.pptx
lecture-1.1.pptx
 
Types of Network
Types of NetworkTypes of Network
Types of Network
 
server-131210061249-phpapp02.pdf
server-131210061249-phpapp02.pdfserver-131210061249-phpapp02.pdf
server-131210061249-phpapp02.pdf
 
Viloria osi layer4-7
Viloria osi layer4-7Viloria osi layer4-7
Viloria osi layer4-7
 
Web technology
Web technologyWeb technology
Web technology
 
Web-Server & It's Architecture.pptx
Web-Server & It's Architecture.pptxWeb-Server & It's Architecture.pptx
Web-Server & It's Architecture.pptx
 
CS-324-6-3 (2).pdf
CS-324-6-3 (2).pdfCS-324-6-3 (2).pdf
CS-324-6-3 (2).pdf
 
Basic Server PPT (THDC)
Basic Server PPT (THDC)Basic Server PPT (THDC)
Basic Server PPT (THDC)
 
21 Scheme_21EC53_MODULE-5_CCN_Dr. ShivaS
21 Scheme_21EC53_MODULE-5_CCN_Dr. ShivaS21 Scheme_21EC53_MODULE-5_CCN_Dr. ShivaS
21 Scheme_21EC53_MODULE-5_CCN_Dr. ShivaS
 
CS-324-6-3 (1).pdf
CS-324-6-3 (1).pdfCS-324-6-3 (1).pdf
CS-324-6-3 (1).pdf
 
Computer networks
Computer networksComputer networks
Computer networks
 
Standard client server protocol.pptx
Standard client server protocol.pptxStandard client server protocol.pptx
Standard client server protocol.pptx
 
Network administration Book
Network administration BookNetwork administration Book
Network administration Book
 

Recently uploaded

HARMONY IN THE NATURE AND EXISTENCE - Unit-IV
HARMONY IN THE NATURE AND EXISTENCE - Unit-IVHARMONY IN THE NATURE AND EXISTENCE - Unit-IV
HARMONY IN THE NATURE AND EXISTENCE - Unit-IVRajaP95
 
Internship report on mechanical engineering
Internship report on mechanical engineeringInternship report on mechanical engineering
Internship report on mechanical engineeringmalavadedarshan25
 
Architect Hassan Khalil Portfolio for 2024
Architect Hassan Khalil Portfolio for 2024Architect Hassan Khalil Portfolio for 2024
Architect Hassan Khalil Portfolio for 2024hassan khalil
 
(RIA) Call Girls Bhosari ( 7001035870 ) HI-Fi Pune Escorts Service
(RIA) Call Girls Bhosari ( 7001035870 ) HI-Fi Pune Escorts Service(RIA) Call Girls Bhosari ( 7001035870 ) HI-Fi Pune Escorts Service
(RIA) Call Girls Bhosari ( 7001035870 ) HI-Fi Pune Escorts Serviceranjana rawat
 
College Call Girls Nashik Nehal 7001305949 Independent Escort Service Nashik
College Call Girls Nashik Nehal 7001305949 Independent Escort Service NashikCollege Call Girls Nashik Nehal 7001305949 Independent Escort Service Nashik
College Call Girls Nashik Nehal 7001305949 Independent Escort Service NashikCall Girls in Nagpur High Profile
 
Call Girls Service Nagpur Tanvi Call 7001035870 Meet With Nagpur Escorts
Call Girls Service Nagpur Tanvi Call 7001035870 Meet With Nagpur EscortsCall Girls Service Nagpur Tanvi Call 7001035870 Meet With Nagpur Escorts
Call Girls Service Nagpur Tanvi Call 7001035870 Meet With Nagpur EscortsCall Girls in Nagpur High Profile
 
Call Girls in Nagpur Suman Call 7001035870 Meet With Nagpur Escorts
Call Girls in Nagpur Suman Call 7001035870 Meet With Nagpur EscortsCall Girls in Nagpur Suman Call 7001035870 Meet With Nagpur Escorts
Call Girls in Nagpur Suman Call 7001035870 Meet With Nagpur EscortsCall Girls in Nagpur High Profile
 
HARDNESS, FRACTURE TOUGHNESS AND STRENGTH OF CERAMICS
HARDNESS, FRACTURE TOUGHNESS AND STRENGTH OF CERAMICSHARDNESS, FRACTURE TOUGHNESS AND STRENGTH OF CERAMICS
HARDNESS, FRACTURE TOUGHNESS AND STRENGTH OF CERAMICSRajkumarAkumalla
 
High Profile Call Girls Nagpur Meera Call 7001035870 Meet With Nagpur Escorts
High Profile Call Girls Nagpur Meera Call 7001035870 Meet With Nagpur EscortsHigh Profile Call Girls Nagpur Meera Call 7001035870 Meet With Nagpur Escorts
High Profile Call Girls Nagpur Meera Call 7001035870 Meet With Nagpur EscortsCall Girls in Nagpur High Profile
 
Microscopic Analysis of Ceramic Materials.pptx
Microscopic Analysis of Ceramic Materials.pptxMicroscopic Analysis of Ceramic Materials.pptx
Microscopic Analysis of Ceramic Materials.pptxpurnimasatapathy1234
 
(PRIYA) Rajgurunagar Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...
(PRIYA) Rajgurunagar Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...(PRIYA) Rajgurunagar Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...
(PRIYA) Rajgurunagar Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...ranjana rawat
 
Structural Analysis and Design of Foundations: A Comprehensive Handbook for S...
Structural Analysis and Design of Foundations: A Comprehensive Handbook for S...Structural Analysis and Design of Foundations: A Comprehensive Handbook for S...
Structural Analysis and Design of Foundations: A Comprehensive Handbook for S...Dr.Costas Sachpazis
 
VIP Call Girls Service Kondapur Hyderabad Call +91-8250192130
VIP Call Girls Service Kondapur Hyderabad Call +91-8250192130VIP Call Girls Service Kondapur Hyderabad Call +91-8250192130
VIP Call Girls Service Kondapur Hyderabad Call +91-8250192130Suhani Kapoor
 
Decoding Kotlin - Your guide to solving the mysterious in Kotlin.pptx
Decoding Kotlin - Your guide to solving the mysterious in Kotlin.pptxDecoding Kotlin - Your guide to solving the mysterious in Kotlin.pptx
Decoding Kotlin - Your guide to solving the mysterious in Kotlin.pptxJoão Esperancinha
 
(MEERA) Dapodi Call Girls Just Call 7001035870 [ Cash on Delivery ] Pune Escorts
(MEERA) Dapodi Call Girls Just Call 7001035870 [ Cash on Delivery ] Pune Escorts(MEERA) Dapodi Call Girls Just Call 7001035870 [ Cash on Delivery ] Pune Escorts
(MEERA) Dapodi Call Girls Just Call 7001035870 [ Cash on Delivery ] Pune Escortsranjana rawat
 
High Profile Call Girls Nagpur Isha Call 7001035870 Meet With Nagpur Escorts
High Profile Call Girls Nagpur Isha Call 7001035870 Meet With Nagpur EscortsHigh Profile Call Girls Nagpur Isha Call 7001035870 Meet With Nagpur Escorts
High Profile Call Girls Nagpur Isha Call 7001035870 Meet With Nagpur Escortsranjana rawat
 
Porous Ceramics seminar and technical writing
Porous Ceramics seminar and technical writingPorous Ceramics seminar and technical writing
Porous Ceramics seminar and technical writingrakeshbaidya232001
 
What are the advantages and disadvantages of membrane structures.pptx
What are the advantages and disadvantages of membrane structures.pptxWhat are the advantages and disadvantages of membrane structures.pptx
What are the advantages and disadvantages of membrane structures.pptxwendy cai
 

Recently uploaded (20)

HARMONY IN THE NATURE AND EXISTENCE - Unit-IV
HARMONY IN THE NATURE AND EXISTENCE - Unit-IVHARMONY IN THE NATURE AND EXISTENCE - Unit-IV
HARMONY IN THE NATURE AND EXISTENCE - Unit-IV
 
9953056974 Call Girls In South Ex, Escorts (Delhi) NCR.pdf
9953056974 Call Girls In South Ex, Escorts (Delhi) NCR.pdf9953056974 Call Girls In South Ex, Escorts (Delhi) NCR.pdf
9953056974 Call Girls In South Ex, Escorts (Delhi) NCR.pdf
 
Internship report on mechanical engineering
Internship report on mechanical engineeringInternship report on mechanical engineering
Internship report on mechanical engineering
 
Architect Hassan Khalil Portfolio for 2024
Architect Hassan Khalil Portfolio for 2024Architect Hassan Khalil Portfolio for 2024
Architect Hassan Khalil Portfolio for 2024
 
(RIA) Call Girls Bhosari ( 7001035870 ) HI-Fi Pune Escorts Service
(RIA) Call Girls Bhosari ( 7001035870 ) HI-Fi Pune Escorts Service(RIA) Call Girls Bhosari ( 7001035870 ) HI-Fi Pune Escorts Service
(RIA) Call Girls Bhosari ( 7001035870 ) HI-Fi Pune Escorts Service
 
College Call Girls Nashik Nehal 7001305949 Independent Escort Service Nashik
College Call Girls Nashik Nehal 7001305949 Independent Escort Service NashikCollege Call Girls Nashik Nehal 7001305949 Independent Escort Service Nashik
College Call Girls Nashik Nehal 7001305949 Independent Escort Service Nashik
 
Call Girls Service Nagpur Tanvi Call 7001035870 Meet With Nagpur Escorts
Call Girls Service Nagpur Tanvi Call 7001035870 Meet With Nagpur EscortsCall Girls Service Nagpur Tanvi Call 7001035870 Meet With Nagpur Escorts
Call Girls Service Nagpur Tanvi Call 7001035870 Meet With Nagpur Escorts
 
Call Girls in Nagpur Suman Call 7001035870 Meet With Nagpur Escorts
Call Girls in Nagpur Suman Call 7001035870 Meet With Nagpur EscortsCall Girls in Nagpur Suman Call 7001035870 Meet With Nagpur Escorts
Call Girls in Nagpur Suman Call 7001035870 Meet With Nagpur Escorts
 
HARDNESS, FRACTURE TOUGHNESS AND STRENGTH OF CERAMICS
HARDNESS, FRACTURE TOUGHNESS AND STRENGTH OF CERAMICSHARDNESS, FRACTURE TOUGHNESS AND STRENGTH OF CERAMICS
HARDNESS, FRACTURE TOUGHNESS AND STRENGTH OF CERAMICS
 
High Profile Call Girls Nagpur Meera Call 7001035870 Meet With Nagpur Escorts
High Profile Call Girls Nagpur Meera Call 7001035870 Meet With Nagpur EscortsHigh Profile Call Girls Nagpur Meera Call 7001035870 Meet With Nagpur Escorts
High Profile Call Girls Nagpur Meera Call 7001035870 Meet With Nagpur Escorts
 
Microscopic Analysis of Ceramic Materials.pptx
Microscopic Analysis of Ceramic Materials.pptxMicroscopic Analysis of Ceramic Materials.pptx
Microscopic Analysis of Ceramic Materials.pptx
 
(PRIYA) Rajgurunagar Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...
(PRIYA) Rajgurunagar Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...(PRIYA) Rajgurunagar Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...
(PRIYA) Rajgurunagar Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...
 
Structural Analysis and Design of Foundations: A Comprehensive Handbook for S...
Structural Analysis and Design of Foundations: A Comprehensive Handbook for S...Structural Analysis and Design of Foundations: A Comprehensive Handbook for S...
Structural Analysis and Design of Foundations: A Comprehensive Handbook for S...
 
VIP Call Girls Service Kondapur Hyderabad Call +91-8250192130
VIP Call Girls Service Kondapur Hyderabad Call +91-8250192130VIP Call Girls Service Kondapur Hyderabad Call +91-8250192130
VIP Call Girls Service Kondapur Hyderabad Call +91-8250192130
 
Decoding Kotlin - Your guide to solving the mysterious in Kotlin.pptx
Decoding Kotlin - Your guide to solving the mysterious in Kotlin.pptxDecoding Kotlin - Your guide to solving the mysterious in Kotlin.pptx
Decoding Kotlin - Your guide to solving the mysterious in Kotlin.pptx
 
DJARUM4D - SLOT GACOR ONLINE | SLOT DEMO ONLINE
DJARUM4D - SLOT GACOR ONLINE | SLOT DEMO ONLINEDJARUM4D - SLOT GACOR ONLINE | SLOT DEMO ONLINE
DJARUM4D - SLOT GACOR ONLINE | SLOT DEMO ONLINE
 
(MEERA) Dapodi Call Girls Just Call 7001035870 [ Cash on Delivery ] Pune Escorts
(MEERA) Dapodi Call Girls Just Call 7001035870 [ Cash on Delivery ] Pune Escorts(MEERA) Dapodi Call Girls Just Call 7001035870 [ Cash on Delivery ] Pune Escorts
(MEERA) Dapodi Call Girls Just Call 7001035870 [ Cash on Delivery ] Pune Escorts
 
High Profile Call Girls Nagpur Isha Call 7001035870 Meet With Nagpur Escorts
High Profile Call Girls Nagpur Isha Call 7001035870 Meet With Nagpur EscortsHigh Profile Call Girls Nagpur Isha Call 7001035870 Meet With Nagpur Escorts
High Profile Call Girls Nagpur Isha Call 7001035870 Meet With Nagpur Escorts
 
Porous Ceramics seminar and technical writing
Porous Ceramics seminar and technical writingPorous Ceramics seminar and technical writing
Porous Ceramics seminar and technical writing
 
What are the advantages and disadvantages of membrane structures.pptx
What are the advantages and disadvantages of membrane structures.pptxWhat are the advantages and disadvantages of membrane structures.pptx
What are the advantages and disadvantages of membrane structures.pptx
 

COMPUTER NW2 (1).pptx

  • 1. Principles of Network Applications • At the core of network application development is writing programs that run on different end systems and communicate with each other over the network. • For example, in the Web application there are two distinct programs that communicate with each other: the browser program running in the user’s host (desktop, laptop, tablet, smartphone, and so on); and the Web server program running in the Web server host. • As another example, in a P2P file-sharing system there is a program in each host that participates in the file-sharing community. In this case, the programs in the various hosts may be similar or identical.
  • 2. • Thus, when developing your new application, you need to write software that will run on multiple end systems. • This software could be written, for example, in C, Java, or Python. Importantly, you do not need to write software that runs on network core devices, such as routers or link-layer switches. • Even if you wanted to write application software for these network-core devices, you wouldn’t be able to do so.
  • 3. rapid development and deployment of a vast array of network applications
  • 4. Processes Communicating • Processes on two different end systems communicate with each other by exchanging messages across the computer network. • A sending process creates and sends messages into the network; a receiving process receives these messages and possibly responds by sending messages back.
  • 6. Client-server architecture • An application program running on the local machine sends a request to another application program is known as a client, and a program that serves a request is known as a server. • For example, when a web server receives a request from the client host, it responds to the request to the client host.
  • 7. • Client/Server network is a network model designed for the end users called clients, to access the resources such as songs, video, etc. from a central computer known as Server. • The central controller is known as a server while all other computers in the network are called clients. • A server is responsible for managing all the resources such as files, directories, printer, etc. • All the clients communicate with each other through a server. For example, if client1 wants to send some data to client 2, then it first sends the request to the server for the permission. The server sends the response to the client 1 to initiate its communication with the client 2.
  • 8. In the context of a communication session between a pair of processes, the process that initiates the communication (that is, initially contacts the other process at the beginning of the session) is labeled as the client. The process that waits to be contacted to begin the session is the server.
  • 9.
  • 10. Characteristics Of Client-server architecture • In Client-server architecture, clients do not directly communicate with each other. For example, in a web application, two browsers do not directly communicate with each other. • A server is fixed, well-known address known as IP address because the server is always on while the client can always contact the server by sending a packet to the sender's IP address.
  • 11. Advantages Of Client/Server network: • A Client/Server network contains the centralized system. Therefore we can back up the data easily. • A Client/Server network has a dedicated server that improves the overall performance of the whole system. • Security is better in Client/Server network as a single server administers the shared resources. • It also increases the speed of the sharing resources
  • 12. Disadvantage Of Client-server architecture: • It is a single-server based architecture which is incapable of holding all the requests from the clients. For example, a social networking site can become overwhelmed when there is only one server exists
  • 13. P2P (peer-to-peer) architecture: • It has no dedicated server in a data center. The peers are the computers which are not owned by the service provider. Most of the peers reside in the homes, offices, schools, and universities. • The peers communicate with each other without passing the information through a dedicated server, this architecture is known as peer-to-peer architecture. • The applications based on P2P architecture includes file sharing and internet telephony.
  • 14. • Peer-To-Peer network is a network in which all the computers are linked together with equal privilege and responsibilities for processing the data. • Peer-To-Peer network is useful for small environments, usually up to 10 computers. • Peer-To-Peer network has no dedicated server. • Special permissions are assigned to each computer for sharing the resources, but this can lead to a problem if the computer with the resource is down
  • 15.
  • 16.
  • 17. Advantages Of Peer-To-Peer Network • It is less costly as it does not contain any dedicated server. • If one computer stops working but, other computers will not stop working. • It is easy to set up and maintain as each computer manages itself. Disadvantages Of Peer-To-Peer Network: • In the case of Peer-To-Peer network, it does not contain the centralized system . Therefore, it cannot back up the data as the data is different in different locations.
  • 18. Features of P2P architecture • Self scalability: In a file sharing system, although each peer generates a workload by requesting the files, each peer also adds a service capacity by distributing the files to the peer. • Cost-effective: It is cost-effective as it does not require significant server infrastructure and server bandwidth.
  • 19. Client and Server Processes • A network application consists of a pair of processes that send the messages to each other over a network. • In P2P file-sharing system, a file is transferred from a process in one peer to a process in another peer. We label one of the two processes as the client and another process as the server. • With P2P file sharing, the peer which is downloading the file is known as a client, and the peer which is uploading the file is known as a server. However, we have observed in some applications such as P2P file sharing; a process can be both as a client and server.
  • 20. Future P2P applications face three major challenges: • ISP Friendly: Most residential ISPs have been dimensioned for “asymmetrical” bandwidth usage, that is, for much more down stream than upstream traffic. • But P2P video streaming and file distribution applications shift upstream traffic from servers to residential ISPs, thereby putting significant stress on the ISPs. • Security: Because of their highly distributed and open nature, P2P applications can be a challenge to secure. • Incentives: The success of future P2P applications also depends on convincing users to volunteer bandwidth, storage etc..
  • 21. INTERFACE BETWEEN THE PROCESS AND THE COMPUTER NETWORK • Most applications consist of pairs of communicating processes, with the two processes in each pair sending messages to each other. • Any message sent from one process to another must go through the underlying network. A process sends messages into, and receives messages from, the network through a software interface called a socket
  • 22. • Let’s consider an analogy to help us understand processes and sockets. A process is analogous to a house and its socket is analogous to its door. • When a process wants to send a message to another process on another host, it shoves the message out its door (socket). • This sending process assumes that there is a transportation infrastructure on the other side of its door that will transport the message to the door of the destination process. • Once the message arrives at the destination host, the message passes through the receiving process’s door (socket), and the receiving process then acts on the message Process --- House, Socket ---Door
  • 23.
  • 24. • A process sends messages into, and receives messages from, the network through a software interface called a socket. • It is also referred to as the Application Programming Interface (API) between the application and the network, since the socket is the programming interface with which network applications are built. • The application at the sending side pushes messages through the socket. At the other side of the socket, the transport-layer protocol has the responsibility of getting the messages to the socket of the receiving process.
  • 26. Transport Services Available to Applications • We can broadly classify the possible services along four dimensions: • Reliable data transfer, • Throughput, • Timing, • Security.
  • 27. Reliable Data Transfer • Packets can get lost within a computer network. For example, a packet can overflow a buffer in a router, or can be discarded by a host or router after having some of its bits corrupted. • For many applications—such as electronic mail, file transfer, remote host access, Web document transfers, and financial applications— data loss can have devastating consequences. • Thus, to support these applications, something has to be done to guarantee that the data sent by one end of the application is delivered correctly and completely to the other end of the application. • If a protocol provides such a guaranteed data delivery service, it is said to provide reliable data transfer. One important service that a transport-layer protocol can potentially provide to an application is process-to-process reliable data transfer
  • 28. THROUGHPUT • Rate at which the sending process can deliver bits to the receiving process. • Throughput can change depending on the bandwidth used by other processes or users • Transport layer could provide guaranteed throughput • Application can request specific speed especially for bandwidth sensitive applications. • Elastic applications can make use of as much, or as little, throughput as happens to be available. For example, e-mail, file transfer, and Web transfers.
  • 29. Timing • A transport-layer protocol can also provide timing guarantees. Every bit that the sender pumps into the socket arrives at the receiver’s socket no more than 100 msec later. • Real-time applications, such as Internet telephony, virtual environments, teleconferencing, and multiplayer games. • Security: • Transport protocol can provide an application with one or more security services. • For example, in the sending host, a transport protocol can encrypt all data transmitted by the sending process, and in the receiving host, the transport-layer protocol can decrypt the data before delivering the data to the receiving process. • A transport protocol can provide security services like confidentiality, data integrity and endpoint authentication.
  • 30. Transport Services Provided by the Internet
  • 31. Application-Layer Protocols • An application-layer protocol defines how an application’s processes, running on different end systems, pass messages to each other. It defines: • The types of messages exchanged, for example, request messages and response messages • The syntax of the various message types, such as the fields in the message and how the fields are delineated. • The semantics of the fields, that is, the meaning of the information in the fields • Rules for determining when and how a process sends messages and responds to messages.
  • 32. The Web and HTTP • The Hyper Text Transfer Protocol (HTTP), the Web’s application-layer protocol, is at the heart of the Web. • HTTP is implemented in two programs: a client program and a server program. • The client program and server program, executing on different end systems, talk to each other by exchanging HTTP messages. • HTTP defines the structure of these messages and how the client and server exchange the messages. • A Web page consists of objects. An object is simply a file like HTML file, a JPEG image, a Java applet, or a video clip—that is addressable by a single URL.
  • 33.
  • 34. • When a user requests a Web page (for example, clicks on a hyperlink), the browser sends HTTP request messages for the objects in the page to the server. • The server receives the requests and responds with HTTP response messages that contain the objects. • HTTP uses TCP as its underlying transport protocol. The HTTP client first initiates a TCP connection with the server. • Once the connection is established, the browser and the server processes access TCP through their socket interfaces
  • 35.
  • 36. Non-Persistent and Persistent Connections • If Separate TCP connection is used for each request and response, then the connection is said to be non persistent. • If same TCP connection is used for series of related request and response, then the connection is said to be persistent.
  • 38.
  • 39.
  • 40. HTTP with Persistent Connections
  • 42.
  • 43.
  • 44.
  • 45.
  • 46.
  • 47.
  • 48.
  • 49. The response from the web server should look like below: HTTP/1.1 200 OK
  • 50.
  • 52.
  • 53. Web Caching • A Web cache—also called a proxy server—is a network entity that satisfies HTTP requests on the behalf of an origin Web server. • The Web cache has its own disk storage and keeps copies of recently requested objects in this storage. • A user’s browser can be configured so that all of the user’s HTTP requests are first directed to the Web cache
  • 54.
  • 55.
  • 56. File Transfer: FTP • FTP is used for transferring file from one host to another host. • In order for the user to access the remote account, the user must provide user identification and a password. After providing this authorization information, the user can transfer files from the local file system to the remote file system and vice versa. • The user first provides the hostname of the remote host, causing the FTP client process in the local host to establish a TCP connection with the FTP server process in the remote host. • The user then provides the user identification and password, which are sent over the TCP connection as part of FTP commands. • Once the server has authorized the user, the user copies one or more files stored in the local file system into the remote file system (or vice versa).
  • 57.
  • 58.
  • 59. FTP Commands and Replies
  • 60. Electronic Mail in the Internet • E-mail has three major components: user agents, mail servers, and the Simple Mail Transfer Protocol (SMTP). • User agents allow users to read, reply to, forward, save, and compose messages. • Mail servers form the core of the e-mail infrastructure. Each recipient has a mailbox located in one of the mail servers. A typical message starts its journey in the sender’s user agent, travels to the sender’s mail server, and travels to the recipient’s mail server, where it is deposited in the recipient’s mailbox.
  • 61.
  • 62. • SMTP is the principal application-layer protocol for Internet electronic mail. It uses the reliable data transfer service of TCP to transfer mail from the sender’s mail server to the recipient’s mail server. As with most application-layer protocols, SMTP has two sides: a client side, which executes on the sender’s mail server, and a server side, which executes on the recipient’s mail server.
  • 63. SMTP
  • 64.
  • 65. DNS—The Internet’s Directory Service • DNS stands for Domain Name System. • DNS is a directory service that provides a mapping between the name of a host on the network and its numerical address. • DNS is required for the functioning of the internet. • DNS is a service that translates the domain name into IP addresses. • For example, suppose the FTP site at EduSoft had an IP address of 132.147.165.50, most people would reach this site by specifying ftp.EduSoft.com. Therefore, the domain name is more reliable than IP address.
  • 66.
  • 67.
  • 68.
  • 69. Step-01: A user program sends a name query to a library procedure called the resolver. Step-02: Resolver looks up the local domain name cache for a match. If a match is found, it sends the corresponding IP Address back. If no match is found, it sends a query to the local DNS server. Step-03: DNS server looks up the name. If a match is found, it returns the corresponding IP Address to the resolver. If no match is found, the local DNS server sends a query to a higher level DNS server. This process is continued until a result is returned. tep-04: After receiving a response, the DNS client returns the resolution result to the application.
  • 70.
  • 71.
  • 72.
  • 73.
  • 74.
  • 75. Peer-to-Peer Applications • In P2P architecture, there is minimal (or no) reliance on always-on infrastructure servers. • Instead, pairs of intermittently connected hosts, called peers, communicate directly with each other.