Chapter 3 - California State University, Long Beach

Download Report

Transcript Chapter 3 - California State University, Long Beach

CECS 474 Computer Network Interoperability
CHAPTER 3
Network Programming &
Applications
Tracy Bradley Maples, Ph.D.
Computer Engineering & Computer Science
Cal ifornia State University, Long Beach
Notes for Douglas E. Comer, Computer Networks and Internets (5th Edition)
Central Theme of Chapter
A programmer can create Internet application software without understanding the
underlying network technology or communication protocols.
Two Paradigms of Internet Use
Applications use TCP/IP to run on the Internet. TCP offers two paradigms for data
transmission:
Transmission Control Protocol (TCP)
User Datagram Protocol (UDP)
Client-Server Architecture
Defn: A server is an application program that waits for contact from another application.
Defn: A client is an application program that initiates contact with a server.
Client-Server Interaction
Client-Server Interaction
Client-Server
bottlenecks at servers
can be addressed by
distributed server
locations or using a
to Peer-to-Peer
Protocols instead.
Peer-To-Peer Architectures
Peer-to-Peer (p2p) architectures are created to avoid the bottlenecks that are often
created in Client/Server networks.
In p2p networks, the data is distributed evenly among a set of N servers, with each
server providing 1/N of the data.
Application Program Interface
Defn: An Application Program Interface (API) is a set of high-level operations
available for use by an application programmer. The API specifies the arguments for
each operation as well as the semantics.
Most client-server applications are written using API’s that are written specifically
for network communication.