1 / 39

Chapter 18

Chapter 18. by David G. Messerschmitt. Objectives. Major functions of the network Impact of network on application performance Collective issues in networking. Impact of network on applications. Communication service provided the application What does application have to do for itself?

idalee
Download Presentation

Chapter 18

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Chapter 18 by David G. Messerschmitt

  2. Objectives • Major functions of the network • Impact of network on application performance • Collective issues in networking

  3. Impact of network on applications • Communication service provided the application • What does application have to do for itself? • Impact on application performance • Message (packet) latency • Message (packet) loss • Message (packet) corruption

  4. Internet protocol architecture Application Remote method invocation (RMI) Middleware Datagram (UDP) Bytestream session (TCP) OS Internetworking (IP) Network Subnetworks

  5. Network topology Switches Hosts Backbone links Access links

  6. Properties of a communication link Bits in transit Bits waiting to be sent Bits that have arrived 00110110 010101110101010 00001011011011 Bitrate = number transmitted per second (Bitrate is sometimes called “bandwidth”) Propagation delay = input-output delay experienced by each bit

  7. Sending packets on a link 0101101011010011011010110101010101011010 Packet 1 Packet 2 Packet 3 Bitrate > # packets per sec x average size of a packet There must be some way (bit patterns) for the receiver to distinguish packets

  8. Statistical multiplexing Messages on three incoming links Queues Single outgoing link What are some other examples of statistical sharing?

  9. Congestion • Cause: irregular packet arrivals, and irregular packet length • Direct effect: sometimes more packets have to wait in queues for space on output link • In severe cases, packets discarded • Indirect effect: waiting time in queues contributes to packet (and hence message) latency

  10. Packet structure Header Payload • Header • Indicate beginning of packet • Destination address for forwarding • Other information specified by network protocols • Payload • Unstructured data to be delivered to application

  11. Addr OutLink Packet forwarding Packet switch Packet   Output link  Routing table

  12. Two basic functions in packet switching • Packet forwarding • Transmitting each packet on the appropriate output link • Based on routing table • Routing • Updating the routing table • Objective: each packet gets closer to destination via less congested links

  13. Full route not written down Each packet switch has >1 output link Routing table : Reducing table size use wildcards: 141.211.* next hop is X Routing

  14. Switches (routers) talk to each other “I’m now accepting traffic for 141.211.*” Called “advertising a route” “Is anyone accepting traffic for 141.211.*?” Update entries in own routing table Sophistication is in deciding whether to accept traffic Routing function

  15. Long routes Circular routes HopLimit limits damage Decrement HopLimit at each router Discard packet if HopLimit=0 Hijacking routes Advertise a route, but don’t deliver Route flapping Frequent updates to routing table Routing Dangers

  16. Intermediate switch not responding Temporary malfunction Queues full (congestion) Bad routing Too long or circular Corruption of packet, especially header Network does not inform sender Network may not know! Packet delivery not guaranteed

  17. Why packets? • Fairness: short message doesn’t have to wait for long message • Allows messages to be sent concurrently • Reduces statistical waiting time • Store and forward delay reduced • Data garbling may necessitate resending only a packet, not a whole message

  18. IP Addresses • Every host gets a distinct address • Can be dynamically assigned • IPv4 (current standard) • Each address 32 bits • Divide into 8 bit segments • Example: 141.211.203.32 • 4 billion addresses • IPv6 (future standard) • Each address 128 bits • ~1500 addresses per square foot • Recall three ways of locating something: • Address • Name • Reference

  19. IP addresses are inconvenient for people 32 bits hard to remember 128 bits very hard to remember Domain names e.g. www.sims.berkeley.edu Domain Name Service (DNS) get an IP address from a domain name Domain Name Service

  20. Hierarchy in location • Addresses hierarchical in topology • Maximize “wild cards” and distribute address administration • Names hierarchical in administration • Single administered organizations often distributed topologically (e.g. ibm.com) • DNS decouples these two issues

  21. Forms of broadcast Simulcast Multicast Multicast requires more sophisticated addressing and routing within the network

  22. Flow control Producer Consumer Queue Stream of messages Flow control Normally the producer determines what information is sent, but consumer has to have a way to slow down producer

  23. Network congestion • Fluctuations of traffic can result in overloads in given network links • Failure of statistical multiplexing • Analogous to processing congestion of a server, except resent packets can make the problem worse • Congestion must be limited in some fashion

  24. Carried traffic Congestion instability Network “capacity” Increasing portion of network traffic is resent packets Offered traffic Social optimum

  25. Questions to address • What social objectives should a congestion control method achieve? • What technical approaches are available to achieve those objectives? • What is the cost of those approaches? • Ultimately, what will the customer pay for congestion control, and how does that relate to the value received?

  26. Congestion control methods • Over-provisioning of facilities (mitigation, not control) • Network initiated • Network  source flow control, or • Source notification and policies, policing, or pricing incentives, or • Admission control for sessions • Sources initiated • Source detects congestion (necessary resent packets is one method), and • Voluntary or mandatory policies Examples of each?

  27. Quality of service (QoS) by David G. Messerschmitt

  28. QoS attributes of a packet • Packet latency • Time until packet delivered at destination • Transmission time, propagation time, queuing delay, processing time • Packet loss • Packet corruption • Payload only • Normally network will not deliver corrupt packet

  29. Transport services • “Raw” packet service is not what is needed by most applications • Transport services “condition” packet service by adding layers • Reliable delivery • Message service • Session • Time stamps • etc

  30. Packet latency affects transport service QoS Stream of packets Audio coder Audio decoder Packet latency End-to-end delay

  31. Reliable delivery • Add acknowledgement for each packet • Lost packet can be detected by missing ACK • Lost packet can be retransmitted • Tradeoff: • Reliable delivery for greater latency • Latency-sensitive applications must abandon reliable delivery (e.g. remote conferencing)

  32. QoS Guarantees • Source and network enter “session contract”: • Source promises not to exceed specified traffic parameters for that session • Rate and burstiness • Network promises to limit impairments such as latency, loss, and corruption

  33. Achieving QoS • TCP/IP offers only best-effort • Every connection gets “best-effort” service • Achieving maximum latency guarantees • Reserve resources • Or attach priorities to packets • Contract may allow network to delay or discard low-priority packets when necessary • Application may guarantee traffic “shape” • e.g., steady flow rather than bursts

  34. Pricing and Accounting • What’s the incentive for using low quality service? • Why should user accept greater latency if less is an option? • Why should application try to minimize bandwidth, or shape its traffic? • Answer is good citizenship, or pricing incentives

  35. Pricing Today • Commercial services: usually flat rate plus connect time (but no per-bit charges) • e.g., CompuServe, Prodigy, America On-Line • Internet: flat rate, unlimited usage • Resellers can charge for connect time • Many people have unlimited use through a university or company

  36. Pricing options

  37. Congestion Pricing Rationale • The fixed cost of building the network is high • The marginal cost of accepting new session is nearly zero (assuming not congested) • Economic efficiency: use whenever marginal benefit > 0 • But capacity is fixed (in the short run) • Person A’s use may reduce B’s quality of service

  38. Congestion Pricing • If network is underutilized, charge nothing • If network is congested • Charge person A the amount of B’s lost value • A will drop out unless his value of use is greater than B’s lost value • Theorem: this raises enough money to expand the network by the socially optimal amount • Monitoring and billing overhead

  39. Big advantage of pricing • Congestion pricing uses incentives rather than forced control or policies to affect user/application behavior • Market mechanism like other goods and services • User/application can determine freely and independently whether use of network during periods of congestion is warranted • Major objection is cost of monitoring and billing

More Related