• Tidak ada hasil yang ditemukan

Computer Networking A Top-Down Approach 6th Edition

N/A
N/A
Protected

Academic year: 2023

Membagikan "Computer Networking A Top-Down Approach 6th Edition"

Copied!
889
0
0

Teks penuh

Second, our experience as instructors (and that of many instructors who have used this text) has been that teaching network applications near the beginning of the course is a powerful motivational tool. They know that the Internet has been a revolutionary and disruptive technology and can see that it is profoundly changing our world.

Teaching Networking Principles

We continue to use the Internet's architecture and protocols as primary vehicles for studying fundamental computer networking concepts. But the spotlight is clearly on the Internet, a fact reflected in our organization of the book around the Internet's five-layer architecture: the application, transport, network, link, and physical layers.

The Web Site

Another advantage of bringing attention to the Internet is that most computer science and electrical engineering students would like to know more about the Internet and its protocols. Given the enormous relevance of the internet, students are naturally curious about what's 'under the hood'. So it's easy for an instructor to get students excited about the basics when they use the Internet as a guide.

Pedagogical Features

We've also added Interactive Exercises that can create (and offer solutions to) problems similar to selected end-of-chapter problems. We have seeded the site with VideoNotes and online problems for Chapters 1 through 5 and will continue to actively add and update this material over time.

Supplements for Instructors

So this book is about modern computer networking - it's about modern protocols and technologies, as well as the basic principles behind those protocols and technologies. Hopefully, this book's sense of humor, use of analogies, and real-world examples will make the material more entertaining.

Chapter Dependencies

One Final Note: We’d Love to Hear from You

Acknowledgments

  • Computer Networks and the Internet 1
  • Application Layer 83
  • Transport Layer 185
  • The Link Layer: Links, Access Networks, and LANs 433

We also want to thank the entire Addison-Wesley team—in particular, Michael Hirsch, Marilyn Lloyd, and Emma Snider—who have done an absolutely outstanding job on this sixth edition (and for putting up with two very sharp authors who seem deceptive - genitally unable to meet deadlines!). Finally, a very special thanks goes to Michael Hirsch, our editor at Addison-Wesley, and Susan Hartman, our former editor at Addison-Wesley.

NETWORKING

What Is the Internet?

  • A Nuts-and-Bolts Description
  • A Services Description
  • What Is a Protocol?

The Transmission Control Protocol (TCP) and the Internet Protocol (IP) are two of the most important protocols on the Internet. When you develop an Internet application, you also need to choose one of the Internet services for your application.

Figure 1.1   Some pieces of the Internet
Figure 1.1 Some pieces of the Internet

The Network Edge

Recall from the previous section that in computer networking jargon, the computers and other devices connected to the Internet are often referred to as end systems. Furthermore, an increasing number of non-traditional devices are being connected to the Internet as end systems (see sidebar).

CASE HISTORY

Access Networks

In the PON architecture, all packets sent from OLT to the splitter are replicated at the splitter (similar to a cable header). Two other access network technologies are also used to provide Internet access to the home.

Figure 1.5  DSL Internet access
Figure 1.5 DSL Internet access

Physical Media

The least expensive and most commonly used conducted transmission medium is twisted pair copper wire. Ultimately, twisted pair became the dominant solution for high-speed LAN networks.

The Network Core

  • Packet Switching
  • Circuit Switching
  • A Network of Networks

Specifically, the connection assigns a frequency band to each connection for the duration of the connection. Our first network structure, Network Structure 1, interconnects all access ISPs with one global transit ISP.

Figure 1.10  The network core
Figure 1.10 The network core

Delay, Loss, and Throughput in Packet-Switched Networks

  • Overview of Delay in Packet-Switched Networks

The lower level ISPs connect to the higher level ISPs, and the higher level ISPs connect to each other. Users and content providers are customers of lower-level ISPs, and lower-level ISPs are customers of higher-level ISPs.

Types of Delay

Queuing Delay and Packet Loss

The La/R ratio, called the traffic intensity, often plays an important role in estimating the amount of queue delay. The qualitative dependence of the average delay in the queue on the traffic intensity is shown in Figure 1.18. One important aspect of Figure 1.18 is the fact that as the traffic intensity approaches 1, the average queuing delay increases rapidly.

Figure 1.18  Dependence of average queuing delay on traffic intensity
Figure 1.18 Dependence of average queuing delay on traffic intensity

End-to-End Delay

The output has six columns: the first column is the n value described above, ie the number of the router along the route; the second column is the name of the router;. The name of router 3 is e.g. border4-rt-gi-1-3.gw.umass.edu and its address is. Looking at the data provided for this same router, we see that in the first of the three tests, the round-trip delay between the source and the router was 1.03 msec. These round-trip delays include all the delays just discussed, including transmission delays, propagation delays, router processing delays, and queuing delays.

Throughput in Computer Networks

Thus, for this simple network with two links, the throughput is min{Rc,Rs}, which means that this is the transmission rate of the bottleneck link. Now suppose that all the links in the core of the communication network have very high transmission rates, much higher than RsandRc. For a final example, see Figure 1.20(b), in which 10 servers and 10 clients are connected to the core of a computer network.

Figure 1.19(b) now shows a network with N links between the server and the client, with the transmission rates of the N links being R 1 , R 2 ,..., R N
Figure 1.19(b) now shows a network with N links between the server and the client, with the transmission rates of the N links being R 1 , R 2 ,..., R N

Protocol Layers and Their Service Models

  • Layered Architecture
  • Encapsulation

We are again interested in the services that a layer provides to the layer above it - the so-called service model of a layer. So let's consider the two additional layers present in the OSI reference model - the presentation layer and the session layer. At the sending host, an application layer message (M in Figure 1.24) is passed to the transport layer.

Figure 1.22 has divided the airline functionality into layers, providing a frame- frame-work in which we can discuss airline travel
Figure 1.22 has divided the airline functionality into layers, providing a frame- frame-work in which we can discuss airline travel

Networks Under Attack

Here, the postal envelope is analogous to the datagram—it encapsulates the transport layer segment (the interoffice envelope), which encapsulates the original message (the memo). One of the features of this textbook is that it brings network security issues to the fore. Connection flooding. The attacker establishes a large number of half-open or fully open TCP connections (TCP connections are discussed in Chapter 3) to the target host.

Figure 1.25  A distributed denial-of-service attack
Figure 1.25 A distributed denial-of-service attack

History of Computer Networking and the Internet

  • The Development of Packet Switching: 1961–1972
  • Proprietary Networks and Internetworking: 1972–1980
  • A Proliferation of Networks: 1980–1990
  • The Internet Explosion: The 1990s
  • The New Millennium

By the end of the 1980s, the number of hosts connected to the public Internet, a confederation of networks very similar to today's Internet, will reach one hundred thousand. In the ARPAnet community, many of the final pieces of today's Internet architecture were falling into place. Berners-Lee and his colleagues developed the initial versions of HTML, HTTP, the web server, and the browser—four key components of the web.

Figure 1.26  An early packet switch
Figure 1.26 An early packet switch

Summary

You should note that these chapters are organized around the top four layers of the five-layer Internet protocol stack, one chapter for each layer. Also note that our journey will start at the top of the Internet Protocol stack, namely the application layer, and work our way down. The second half of the book—Chapters 6 through 9—zooms in on four extremely important (and somewhat independent) topics in modern computer networking.

Review Questions

Assuming there is no other traffic on the network, what is the throughput rate for the file transfer. Why is packet switching on the Internet analogous to driving from one city to another and asking for directions along the way? Suppose Trudy positions herself in the network so that she can capture all the packets sent by Alice and send whatever she wants to Bob;

Problems

Principles of Network Applications

  • Network Application Architectures
  • Processes Communicating
  • Transport Services Available to Applications
  • Transport Services Provided by the Internet

As shown in this figure, a socket is the interface between the application layer and the transport layer inside the host. The only control an application developer has on the transport layer side is (1) the choice of transport protocol and (2) possibly the ability to tweak some transport layer parameters, such as the maximum buffer and maximum segment sizes (to be captured). in Chapter 3). Recall that the socket is the interface between the application process and the transport layer protocol.

Figure 2.1  Communication for a network application takes place between end systems at the application layer
Figure 2.1 Communication for a network application takes place between end systems at the application layer

FOCUS ON SECURITY

Application-Layer Protocols

An application layer protocol is only one part of a network application (although from our perspective it is a very important part of the application!). The main application layer protocol for e-mail is Simple Mail Transfer Protocol (SMTP) [RFC 5321]. Thus, the main e-mail application layer protocol, SMTP, is only one part (albeit an important part) of an e-mail application.

Network Applications Covered in This Book

Some application layer protocols are specified in RFCs and are therefore in the public domain. For example, the Web's application layer protocol, HTTP (the HyperText Transfer Protocol [RFC 2616]), is available as an RFC. Many other application layer protocols are proprietary and deliberately not available in the public domain.

The Web and HTTP

  • Overview of HTTP
  • Non-Persistent and Persistent Connections
  • HTTP Message Format
  • User-Server Interaction: Cookies
  • Web Caching
  • The Conditional GET

The steps above illustrate the use of non-persistent connections, where each TCP connection is closed after the server sends the object—the connection does not persist for other objects. 301 Permanently moved: Requested object has been permanently moved;. the new URL is specified in Location:header of the response message. This figure shows two networks—the institutional network and the rest of the public Internet.

Figure 2.6  HTTP request-response behavior
Figure 2.6 HTTP request-response behavior

File Transfer: FTP

  • FTP Commands and Replies

When the server side receives a command for a file transfer over the control connection (either to or from the remote host), the server side initiates a TCP data connection to the client side. The list of files is sent over a (new and non-persistent) data connection instead of the control TCP connection. This command causes the remote host to initiate a data connection and send the requested file over the data connection.

Figure 2.15  Control and data connections
Figure 2.15 Control and data connections

Electronic Mail in the Internet

  • SMTP
  • Comparison with HTTP
  • Mail Message Formats
  • Mail Access Protocols

This can be done simply by asking Alice's user agent to send the message directly to Bob's mail server. However, usually the sender's user agent does not directly dialogue with the recipient's mail server. A mail access protocol, such as POP3, is used to transfer mail from the recipient's mail server to the recipient's user agent.

Figure 2.16 presents a high-level view of the Internet mail system. We see from this diagram that it has three major components: user agents, mail servers, and the
Figure 2.16 presents a high-level view of the Internet mail system. We see from this diagram that it has three major components: user agents, mail servers, and the

DNS—The Internet’s Directory Service

  • Services Provided by DNS

The browser extracts the hostname, www.someschool.edu, from the URL and sends the hostname to the client side of the DNS application. DNS can be invoked by a program to obtain the canonical hostname of a supplied alias hostname as well as the IP address of the host. DNS can be invoked by a mail program to obtain the canonical hostname of a supplied alias hostname as well as the IP address of the host.

PRINCIPLES IN PRACTICE

Overview of How DNS Works

The local DNS server then forwards the query message to one of these TLD servers. The TLD server takes the umass.edusuffix into account and responds with the IP address of the authoritative DNS server for the University of Massachusetts, namely dns.umass.edu. Finally, the local DNS server forwards the query message directly to dns.umass.edu, which responds with the IP address of gaia.cs.umass.edu.

Figure 2.19  Portion of the hierarchy of DNS servers
Figure 2.19 Portion of the hierarchy of DNS servers

DNS Records and Messages

If a DNS server is authoritative for a given hostname, then the DNS server will contain an A record for the hostname. Even if the DNS server is not authoritative, it may contain an A record in its cache.). The local DNS server then sends a DNS query to look for the type A record corresponding to www.networkutopia.com.

Figure 2.23  DNS message format
Figure 2.23 DNS message format

Peer-to-Peer Applications

  • P2P File Distribution
  • Distributed Hash Tables (DHTs)

The peer with the slowest download speed cannot obtain all Fbits of the file in less than F/dminseconds. In this way, the tracker keeps track of the peers participating in the torrent. In the P2P system, each peer will only have a small subset of the totality of (key, value) pairs.

Figure 2.24  An illustrative file distribution problem
Figure 2.24 An illustrative file distribution problem

Socket Programming: Creating Network Applications

  • Socket Programming with UDP
  • Socket Programming with TCP

The client reads a line of characters (data) from its keyboard and sends the data to the server. With the server process running, the client process can initiate a TCP connection to the server. This last line closes the socket, thus closing the TCP connection between the client and the server.

Figure 2.28  The client-server application using UDP
Figure 2.28 The client-server application using UDP

Summary

In this program, after we send the modified sentence to the client, we close the connection socket. But since serverSocketremains open, another client can now knock on the door and send the server a sentence to modify. You are encouraged to run both programs on two separate hosts and also modify them to achieve slightly different goals.

Review Questions

Is it possible to determine from the header the IP address of the host from which the message was sent? Answer the following questions and indicate where in the HTTP GET message below you will find the answer. Answer the following questions and indicate where in the message below you will find the answer.

Gambar

Figure 1.1   Some pieces of the Internet
Figure 1.2   A human protocol and a computer network protocol
Figure 1.3  End-system interaction
Figure 1.4  Access networks
+7

Referensi

Dokumen terkait