York New Media Science+Business
Transcription
York New Media Science+Business
is Th e pl m sa is tf or no al ci er m m co e. us Sp r © ge r in s es +B us in ce en Sc i ia ed M ew N Yo rk rk Contents (page numbers are not final ones) VII nc e +B CONTENTS Sc ie AUTHOR BIOGRAPHY in ge r PREFACE TO THE SECOND EDITION © Sp r ACKNOWLEDGMENTS us e. PART I: TELECOMMUNICATION NETWORKS is sa m pl e is no tf or c om m er ci al 1. Introduction to Telecommunication Networks 1.1 Milestones in the evolution of telecommunications 1.2 Standardization bodies in telecommunications 1.3 Telecommunication networks: general concepts 1.3.1 Transmissions in telecommunication networks 1.3.2 Switching techniques in telecommunication networks 1.3.3 The ISO/OSI reference model 1.3.4 Traffic engineering: general concepts 1.3.5 Queuing theory in telecommunications 1.4 Transmission media 1.4.1 Copper medium: the twisted pair Th ne V us i DEDICATION ss M ed ia N ew Yo Pre-publication version XIII XV XIX 1 3 3 8 10 13 18 25 34 36 37 38 viii QUEUING THEORY AND TELECOMMUNICATIONS © is sa m pl e is no tf or c om m er ci al us e. +B 3. IP-based Networks and Future Trends 3.1 Introduction 3.2 The Internet 3.2.1 Introduction to the Internet protocol suite 3.2.2 TCP/IP protocol architecture 3.3 IP (version 4) addressing 3.3.1 IPv4 datagram format 3.3.2 IP subnetting 3.3.3 Public and private IP addresses 3.3.4 Static and dynamic IP addresses 3.3.5 An example of local area network architecture 3.3.6 IP version 6 3.4 Domain structure and IP routing 3.4.1 Routing algorithms Th Yo ew N ia ed M ss ne 73 73 73 80 90 100 104 105 110 112 116 118 126 142 153 154 nc e ie Sc ge r Sp r in 2. Legacy Digital Networks 2.1 Introduction to digital networks 2.1.1 X.25-based networks 2.1.2 ISDN 2.1.3 Frame relay-based networks 2.2 B-ISDN and ATM technology 2.2.1 ATM protocol stack 2.2.2 Cell format 2.2.3 ATM protocol stack 2.2.4 Traffic classes and ALL layer protocols 2.2.5 ATM switches 2.2.6 ATM switch architectures 2.2.7 Management of traffic 2.2.8 ATM physical later 2.2.9 Internet access through ATM over ADSL 2.3 Bibliographic references rk 39 40 45 50 51 53 55 55 60 64 71 us i 1.4.2 Copper medium: the coaxial cable 1.4.3 Wireless medium 1.4.4 Optical fibers 1.5 Multiplexing hierarchy 1.5.1 FDM 1.5.2 TDM 1.5.3 The E1 bearer structure 1.6 The classical telephone network 1.6.1 Digital transmissions through POTS 1.6.2 Switching elements in PSTN 1.7 Bibliographic references 159 159 159 161 162 165 167 171 175 177 177 180 183 187 nc e +B us 325 er ci al PART II: QUEUING THEORY AND APPLICATIONS TO NETWORKS is sa m pl e is no tf or c om m 4. Survey on Probability Theory 4.1 The notion of probability and basic properties 4.2 Random variables: basic definitions and properties 4.2.1 Sum of independent random variables 4.2.2 Minimum and maximum of random variables 4.2.3 Comparisons of random variables 4.2.4 Moments of random variables 4.2.5 Random variables in the field of telecommunications 4.3 Transforms of random variables Th Yo ew N ia ed M ss ne us i 204 205 205 214 218 221 222 223 226 228 230 232 233 235 238 240 242 246 247 249 292 293 295 297 305 307 310 313 318 e. © Sp r in ge r Sc ie 3.4.2 Routing implementation issues 3.5 QoS provision in IP networks 3.5.1 IntServ 3.5.2 DiffServ 3.6 IP traffic over ATM networks 3.6.1 The LIS method 3.6.2 The Next Hop Routing Protocol 3.6.3 The integrated approach for IP over ATM 3.7 Multi-Protocol Label Switching technology 3.7.1 Comparison between IP routing and label switching 3.7.2 Operations on labels 3.7.3 MPLS header 3.7.4 MPLS nested domains 3.7.5 MPLS forwarding tables 3.7.6 Protocols for the creation of an LSP 3.7.7 IP/MPLS over ATM 3.7.8 MPLS traffic management 3.7.9 GMPLS technology 3.8 Transport layer 3.8.1 TCP 3.8.2 UDP 3.8.3 Port numbers and sockets 3.9 Next-Generation Networks 3.9.1 NGN architecture 3.9.2 Geographical core/transport networks 3.9.3 Current and future satellite networks 3.10 Future Internet concepts 3.11 Bibliographic references 3.12 Exercises on Part I of the book rk ix QUEUING THEORY AND TELECOMMUNICATIONS 327 327 331 337 339 340 341 345 367 x QUEUING THEORY AND TELECOMMUNICATIONS m is sa m pl e is no tf or c om +B 6. M/G/1 Queuing Theory and Applications 6.1 The M/G/1 queuing theory 6.1.1 The M/D/1 case 6.1.2 The M[comp]/G[b]/1 queue with bulk arrivals or bulk service 6.2 M/G/1 system delay distribution in the FIFO case 6.3 Numerical inversion method of the Laplace transform 6.4 Impact of the service time distribution on M/G/1 queue 6.5 M/G/1 theory with state-dependent arrival process Th rk Yo ew N ia ed M ss ne 393 393 397 398 401 402 404 404 407 409 410 413 415 417 418 420 424 425 426 428 430 430 433 438 450 nc e ie er ci al us e. © Sp r in ge r Sc 5. Markov Chains and Queuing Theory 5.1 Queues and stochastic processes 5.1.1 Compound arrival processes and implications 5.2 Poisson arrival process 5.2.1 Sum of independent Poisson processes 5.2.2 Random splitting of a Poisson process 5.2.3 Compound Poisson processes 5.3 Birth-death Markov chains 5.4 Notations for queuing systems 5.5 Little theorem and insensitivity property 5.5.1 Proof of the Little theorem 5.6 M/M/1 queue analysis 5.7 M/M/1/K queue analysis 5.7.1 PASTA property 5.8 M/M/S queue analysis 5.9 M/M/S/S queue analysis 5.10 The M/M/∞ queue analysis 5.11 Distribution of the queuing delays in the FIFO case 5.11.1 M/M/1 case 5.11.2 M/M/S case 5.12 Erlang-B generalization for non-Poisson arrivals 5.12.1 The traffic types in the M/M/S/S queue 5.12.2 Blocking probability for non-Poisson arrivals 5.13 Exercises 5.14 Bibliographic references 367 377 384 386 387 387 388 391 us i 4.3.1 The probability generating function 4.3.2 The characteristic function of a pdf 4.3.3 The Laplace transform of a pdf 4.4 Methods for the generation of random variables 4.4.1 Method of the inverse of the distribution function 4.4.2 Method of the transform 4.5 Exercises 4.6 Bibliographic references 453 453 461 462 463 465 468 472 xi is no tf or c om m er ci al us e. © Sp r in ge r Sc ie nc e +B Yo ew N ia ed M us i 7. Local Area Networks and Analysisis 511 7.1 Introduction 511 7.1.1 Standards for local area networks 516 7.2 Contention-based MAC protocols 519 7.2.1 Aloha protocol 519 7.2.2 Slotted-Aloha protocol 526 7.2.3 The Aloha protocol with ideal capture effect 530 7.2.4 Alternative analytical approaches for Aloha protocols 533 7.2.5 CSMA schemes 539 7.3 Demand-assignment protocols 577 7.3.1 Polling protocols 578 7.3.2 Token passing protocols 579 7.3.3 Analysis of token and polling schemes 581 7.3.4 Reservation-Aloha (R-Aloha) protocol 586 7.3.5 Packet Reservation Multiple Access (PRMA) protocol 592 7.3.6 Efficiency comparison: CSMA/CD vs. token protocols 593 7.4 Fixed assignment protocols 599 7.4.1 Frequency Division Multiple Access (FDMA) 599 7.4.2 Time Division Multiple Access (TDMA) 599 7.4.3 Code Division Multiple Access (CDMA) 600 7.4.4 Orthogonal Frequency Division Multiple Access (OFDMA) 603 7.4.5 Resource reuse in cellular systems 603 7.5 Exercises 604 7.6 Bibliographic references 610 rk 475 480 482 484 485 488 489 490 493 496 497 498 502 508 ss 6.6 Applications of the M/G/1 analysis to ATM 6.7 A survey of advanced M/G/1 cases 6.8 Different imbedding options for the M/G/1 theory 6.8.1 Imbedding at slot end of the output line 6.8.2 Imbedding at transmission end of low-priority cells 6.8.3 Imbedding at transmission end of low-priority messages 6.9 Continuous-time M/G/1 queue with ‘geometric’ messages 6.9.1 Imbedding at packet transmission completion 6.9.2 Imbedding at message transmission completion 6.10 M/G/1 theory with differentiated service times 6.10.1 The differentiated theory applied to compound arrivals 6.11 M/D[b]/1 theory with batched service 6.12 Exercises 6.13 Bibliographic references ne QUEUING THEORY AND TELECOMMUNICATIONS Th is sa m pl e 8. Networks of Queues 8.1 Introduction 613 613 xii QUEUING THEORY AND TELECOMMUNICATIONS 617 617 618 619 622 624 625 626 631 633 Th is sa m pl e is no tf or c om m er ci al us e. © Sp r in ge r Sc ie nc e +B us i ne ss M ed ia N ew INDEX Yo rk 8.1.1 Traffic rate equations 8.1.2 The Little theorem applied to the whole network 8.2 Tandem queues and the Burke theorem 8.3 The Jackson theorem 8.3.1 Analysis of a queue with feedback 8.4 Traffic matrices 8.5 Network planning issues 8.6 Exercises 8.7 Bibliographic references is Th e pl m sa is al ci er m om or c tf no e. us © Sp r ge r in ss ne us i +B nc e ie Sc ia ed M ew N Yo rk EXTRACT FROM PART I Chapter 3 ss M ed ia N ew Yo rk IP-BASED NETWORKS AND FUTURE TRENDS +B us i ne 3. IP-BASED NETWORKS AND FUTURE TRENDS nc e 3.1 Introduction tf 3.2 The Internet or c om m er ci al us e. © Sp r in ge r Sc ie A growing number of people are using the Internet, the network of the networks; this is also evident from the different bandwidth-intensive applications supported by Internet and by the considerable number of Internet books, video, etc. that have become available during these years. The widespread diffusion of social networks (Facebook, YouTube, etc.), peer-to-peer traffic, and cloud applications have further contributed to the impressive growth in the Internet use. IP traffic has globally grown eight times in the period 2008-2012 (five years) and is expected to increase threefold in the next three years. The annual global IP traffic will surpass the Zettabyte (i.e., 1021 bytes) threshold by the end of 2016 [1]. This Chapter focuses on the protocols and the network technologies to support Internet traffic. Th is sa m pl e is no J. C. R. Licklider of the Massachusetts Institute of Technology (MIT) proposed a global network of computers in 1962 and moved to the Defense Advanced Research Projects Agency (DARPA) to lead a project to Th is sa m pl e is no tf or c om m er ci al us e. © Sp r in ge r Sc ie nc e +B Yo ew N ia ed M ss us i interconnect Department of Defense (DoD) sites in the United States of America. L. Kleinrock of MIT (and, later, University of California, Los Angeles, UCLA) developed the theory of packet-switching, which is at the basis of Internet traffic. In 1965, L. Roberts of MIT connected a Massachusetts computer with a California computer by means of a dial-up telephone line. He showed the feasibility of wide area networking, but also that the telephone circuit-switching was inadequate for this traffic, thus confirming the importance of the Kleinrock packet-switching theory. These pioneers (as well as other people) are the actual founders of the Internet. The Internet, then known as ARPANET, was brought online in 1969, initially connecting four major sites (computers), under a contract held by the renamed Advanced Research Projects Agency (ARPA). Once the initial sites were installed, representatives from each site met together to solve the technical problems concerning the interconnection of hosts by means of protocols. A working group, called Network Working Group (NWG), was in charge of defining the first ‘rules’ (i.e., protocols) of the network. The open approach adopted by the first NWG meeting continued in a more formalized way by using meeting notes, called Request For Comments (RFC). These documents are intended to keep members updated on the status of several things concerning Internet protocol. They were also used to receive responses from researchers. The Internet was designed to provide a communication network able to work even if some sites are destroyed. The early Internet was used by computer experts, engineers, scientists, and librarians. There were no personal computers and no massive use in those days. Different ‘initial’ applications and protocols were conceived to exploit ARPANET. E-mail was adopted for ARPANET in 1972. The telnet protocol, allowing us to log on a remote computer, was defined in 1972 [2]. The FTP protocol, enabling file transfers between Internet sites, was published as RFC 354 in 1972 [3],[4] and from then further RFCs were made available to update the characteristic of the FTP protocol. RFCs are today the method used to standardize every aspect of the Internet; they are freely accessible in the ASCII format through the Internet Engineering Task Force (IETF) Web site [5]. RFCs are approved after a very strong review process. IETF is an open, all-volunteer organization (started its activities in 1983), with no formal membership nor membership requirements. It is divided into a large number of working groups, each dealing with a specific Internet issue. In 1974, a new suite of protocols was proposed and implemented in the ARPANET, based on the Transmission Control Protocol (TCP) for end-toend communications. In 1978, a new Internet design approach was conceived with the division of tasks between two protocols: rk QUEUING THEORY AND TELECOMMUNICATIONS ne 160 Chapter 3 161 The new Internet Protocol (IP) for routing packets and device-to-device communications (i.e., host-to-gateway or gateway-to-gateway); m er ci al us e. © Sp r in ge r Sc ie nc e +B Yo ew N ia ed M ss ne us i Since TCP and IP were originally conceived as working in tandem, this protocol suite is commonly denoted as TCP/IP. The original versions of both TCP and IP were written in 1981 [6],[7]. As long as the number of Internet sites was small, it was easy to keep track of the resources of interest that were available. But as more and more universities and organizations connected, the Internet became harder to track. There was the need for tools to index the available resources. Starting from 1989, significant efforts were pursued in this direction. In particular, T. Berners-Lee and others at the European Laboratory for Particle Physics (i.e., CERN) laid the basis to share documents using browsers in a multi-platform environment. In particular, three new technologies were incorporated into his proposal: (i) the HyperText Markup Language (HTML) used to write documents (also named ‘pages’) for the Internet; (ii) the HyperText Transfer Protocol (HTTP), an application layer protocol to transmit documents in HTML format; (iii) a browser client software program to receive and interpret HTML documents and to display the results. His proposal was based on hypertext, i.e., a system of embedding links, that is Internet addresses, in the text to refer to other documents Internet documents. In 1991, the World Wide Web was born because the first really-friendly interface to the Internet was developed at the University of Minnesota; it was named ‘gopher’, after the University of Minnesota mascot, the golden gopher. In 1993, the development of the graphical browser, called Mosaic, by M. Andreessen and his team at the National Center For Supercomputing Applications (NCSA), a research institute at the University of Illinois, gave a strong boost to the Web. Starting from this browser, new ones rapidly spread and made the Web a worldwide success. Further developments to the Web were represented by the Web search engines, as already discussed in Chapter 1 (Section 1.1). rk The TCP protocol for reliable, end-to-end communications. or c om 3.2.1 Introduction to the Internet protocol suite Th is sa m pl e is no tf The goal of TCP/IP was to interconnect different physical networks to form what appears to the user as a universal network. Such a set of interconnected networks is called an Internet [8]-[11]. Communication services are provided by Internet protocols, which operate between the link 162 QUEUING THEORY AND TELECOMMUNICATIONS layer and the application one. The architecture of the physical networks is hidden to the users. To be able to interconnect two networks, we need a ‘computer’ that is attached to both networks and that can forward packets from one network to another and vice versa; this device, called router, has two important characteristics: From the network standpoint, a router is a normal host. Yo rk From the user standpoint, routers are invisible; the user sees only a larger internetwork. M ed ia N ew Each host has an address assigned, the IP address, to identify it in the Internet. When a host has multiple network adapters, each adapter has a separate IP address. ge r Sc ie nc e +B us i Although there is no universal agreement on how to describe TCP/IP with a layered model, it is generally regarded as being composed of fewer layers than the seven layers of the classical OSI model. Most descriptions of TCP/IP define three to five functional levels in the protocol architecture [12]; a four-layer TCP/IP model is shown in Figure 3.1. ne ss 3.2.2 TCP/IP protocol architecture e.g., Browsers in Applications and protocols Sp r e.g., SNMP ICMP TCP UDP e. Transport © e.g., FTP, Telnet, SMTP, HTTP IP us Network Network hardware m er ci al MAC&PHY ARP tf or c om Figure 3-1. Simplified Internet protocol suite. The acronyms in this figure will be described along this Chapter; this figure will be taken as a reference. Th is sa m pl e is no As in the OSI model, data are passed down through the stack when they are sent to the network, and passed up through the stack when they are received from the network. Each layer treats the information it receives from the layer above as data and adds its own header in front of that information Thunderbird Silverlight Fire Fox Application layer protocols SMTP POP/IMAP HTTP SIP client VoIP/Skype/ GoogleTalk/MSN Media players (e.g., Polycom) SIP Sp r Waist of the Internet protocol hourglass model IP MAC layer protocols © Network layer protocols UDP RTP/RTCP in TCP P2P ge r Transport layer protocols Sc ie Applications nc e +B Yo ew N ia ed M ss us i to ensure the proper management of these data. The operation to add the header (containing control information) is called encapsulation. The network layer is the lowest layer of the TCP/IP protocol hierarchy. The protocols of this layer provide the means to route data to other network devices. Unlike higher-level protocols, network layer protocols must know the details of the underlying network (its packet structure, addressing, etc.) to correctly format the data being transmitted to comply with local network constraints. The Internet protocol stack has a layered architecture resembling an hourglass (see Figure 3.2): the reason for this denomination of the Internet protocol model is that there are many PHY and MAC layer protocols and there are many application and transport layer protocols, while on the waist of the hourglass at the network layer there are very few protocols, basically the IP protocol. The hourglass model expresses the concept that the IP protocol is the glue, the basic building block of the Internet. The protocols of the waist are those to which we are referring mainly when talking about the Internet ‘ossification’; this is seen today mostly as a limit to the flexibility and security, because all information is forced through a small set of midlayer protocols. rk 163 ne Chapter 3 IEEE 802.11 PHY layer us e. IEEE 802.3 Coaxial cable Optical fiber Wireless link er ci al Twisted pair or c om m Figure 3-2. The Internet protocol stack and the hourglass model (note that not all the protocols have been shown at the different layers, but just some of them). Th is sa m pl e is no tf The Internet Protocol (IP) originally defined in RFC 791 [6] is the heart of the Internet protocol suite and the most important protocol of the network layer. IP provides the basic packet delivery service for the networks. All the higher-layer protocols (and the related data flows) use IP to deliver data. Its functions include: 164 QUEUING THEORY AND TELECOMMUNICATIONS Defining the IP packet (i.e., a datagram, the basic transmission unit in the Internet), Defining the Internet addressing scheme, Moving data between network and transport layers, Routing datagrams to remote hosts, or c om m er ci al us e. © Sp r in ge r Sc ie nc e +B Yo ew N ia ed M ss ne us i IP is an unreliable protocol, because it does not perform error detection and recovery for transmitted data. This does not mean that we cannot rely on this protocol. In fact, IP can be relied upon to deliver data accurately to the destination, but it does not check whether data are received correctly or not. Higher-layer protocols of the Internet protocol stack are in charge of providing error detection and recovery, if required. The protocol layer just above the network one is the host-to-host transport layer. This name is commonly shortened to transport layer. The two most important protocols at the transport layer are Transmission Control Protocol (TCP) and User Datagram Protocol (UDP). TCP provides a reliable, connection-oriented, byte-stream data delivery service; error detection and error recovery (through retransmissions) are end-to-end performed. UDP provides a low-overhead, unreliable, connectionless datagram delivery service. Both protocols exchange data between application and network layers. Applications programmers can choose the service that is most appropriate for their specific needs. UDP gives application programs direct access to a datagram delivery service, like the delivery service provided by IP. This allows applications to exchange messages over the network with a minimum protocol overhead. Applications requiring the transport protocol to provide reliable data delivery use TCP, since it verifies that data are accurately delivered across the network and in the right sequence. The application layer is at the top level of the TCP/IP protocol architecture. This layer includes all processes that use transport protocols to deliver data. There are many application layer protocols. Most of them provide user services; new services are constantly being added at this layer. The most popular and implemented application layer protocols are: rk Performing fragmentation and re-assembly of datagrams. no tf Telnet: The network terminal protocol, which allows us to remotely log on hosts spread in network. is FTP: The File Transfer Protocol used for file transfer. Th is sa m pl e SMTP: The Simple Mail Transfer Protocol, which delivers electronic mail. Chapter 3 165 HTTP: The Hypertext Transfer Protocol, delivering Web pages over the network. Domain Name System (DNS): This is a service to map IP (numeric) addresses to the names assigned to network devices. Network File System (NFS): This protocol permits to share files among various hosts in the network. ia N ew Yo rk Finally, the Open Shortest Path First (OSPF), which is a layer 3 routing protocol, includes a transfer protocol for the exchange of routing information among routers and as such (even with some debate) can also be considered as an application layer protocol. ge r Sc ie nc e +B ss ne us i IP addresses are used to route datagrams in the network and to allow their correct delivery to destination. An IP version 4 (IPv4) address is formed of 32 bits, written by dividing the bits in groups of 8 and taking the corresponding decimal number. Each of these numbers is written separated by a dot (i.e., dotted-decimal notation) and can range from 0 to 255. For example, 1.160.10.240 could be an IP address. The specification of IP addresses is contained in RFC 1166 [13]. An IP address can be divided in a pair of numbers (the length of these fields depend on the IP address class): M ed 3.3 IP (version 4) addressing Sp r in IP address = <network identifier> + <host identifier> . Th is sa m pl e is no tf or c om m er ci al us e. © There are five classes of IP addresses, as described in Figure 3.3. Classes are introduced to divide the space of IP addresses in groups of a limited number of addresses (i.e., that can support a limited number of hosts). This is carried out for an efficient use of IP addresses and takes the name of ‘classful’ IPv4 addressing. 166 QUEUING THEORY AND TELECOMMUNICATIONS 0 8 16 24 31 0 Class A network host 10 Class B network host 110 Yo rk Class C host ew network 1110 ia N Class D M Class E ed multicast ne ss 1111 us i reserved nc e +B Figure 3-3. IPv4 address classes. Sp r in ge r Sc ie For classes A, B, and C, the address of a network has all the host bits equal to ‘0’. Whereas, the broadcast address of a network is characterized by all the host bits equal to ‘1’. The number of hosts addressable in a network is therefore related to the number of available combinations for the bits of the host field minus two addresses for network and multicast purposes. om m er ci al us e. © Class A: First bit set to ‘0’ plus 7 network bits and 24 host bits Initial byte ranging from 0 to 127 Totally, 128 (= 27) Class A network addresses are available (0 and 127 network addresses are reserved) 16,777,214 (= 2242) hosts can be addressed in each Class A network Th is sa m pl e is no tf or c Class B: First two bits set to ‘10’, plus 14 network bits and 16 host bits Initial byte ranging from 128 to 191 Totally, 16,384 (= 214) Class B network addresses 65,534 (= 2162) hosts can be addressed in each Class B network Chapter 3 167 Class C: First three bits set to ‘110’ plus 21 network bits and 8 host bits Initial byte ranging from 192 to 223 Totally, 2,097,152 (= 221) Class C network addresses 254 (= 282) hosts can be addressed in each Class C network N ew Yo rk Class D: First four bits set to ‘1110’ plus 28 multicast address bits Initial byte ranging from 224 to 247 Class D addresses are used for multicast flows us e. © Sp r in ge r Sc ie nc e +B us i A router receiving an IP packet extracts its IP destination address, which is classified by examining its first bits. Once the IP address class has been determined, the IP address can be broken down into network and host bits. Intermediate routers ignore host bits and only need to match network bits within their routing table to route the IP packet along the correct path in the network. Once a packet reaches its target network, its host field is examined for the final local delivery. IPv4 addressing space is limited: this is a significant problem because of the continued spread of the Internet. In order to address this issue, possible approaches are: IP subnetting (see Section 3.3.2), the use of private IP addresses (see Section 3.3.3), and the new IP version 6 (see Section 3.3.6). ne ss M ed ia Class E: First four bits set to ‘1111’ plus 28 reserved address bits Initial byte ranging from 248 to 255 This address class is reserved for experimental use. er ci al 3.3.1 IPv4 datagram format Th is sa m pl e is no tf or c om m Data transmitted over the Internet using IP addresses are organized in variable-length packets, called IP datagrams. Let us consider here the IPv4 datagram format, defined in RFC 791 [6]. An IPv4 datagram is divided into two parts: the header and the payload. The header contains addressing and control fields, while the payload carries the actual data to be sent. Even though IP is a relatively-simple, connectionless, “unreliable” protocol, the IPv4 header carries some control information that makes it quite long. It is minimum 20 byte long and can be even longer with the options. The IP datagram format is shown in Figure 3.4, where each row corresponds to four 168 QUEUING THEORY AND TELECOMMUNICATIONS bytes (i.e., a word of 32 bits). The meaning of the different header fields is explained below. 32 bits 4 bits Type of Service Time To Live Flags Fragment Offset Protocol rk 20 bytes Identification Total Length Header Checksum Yo Version H.length ew Source Address ia N Destination Address ed Options ss M Padding lity MF Sc ie ghput DF nc e Reserved Delay Throu- Reliabi- Reserved Precedence +B us i ne Data Sp r in ge r Figure 3-4. IPv4 datagram format. ci al us e. © Version (4 bits): Identifies the IP version of the datagram. For IPv4, obviously this field contains the number 4. The purpose of this field is to ensure compatibility among different devices, which may be running different IP versions. In general, a device running an older IP version will reject datagrams created by newer implementations. or c om m er IHL, Internet Header Length (4 bits): Specifies the length of the IP header in 32-bit words. This length includes any optional field and padding. The normal value of this field when no options are used is 5 (i.e., 5 words of 32 bits, corresponding to 20 bytes). Th is sa m pl e is no tf ToS, Type of Service (8 bits): A field carrying information to support quality of service features, such as prioritized delivery of IP datagrams. The ToS byte is divided into four sub-fields, as shown in Figure 3.4: - The first three bits are used for the precedence field (value of 0 for a normal priority, up to a value of 7 for control messages); Chapter 3 - 169 The delay bit specifies whether a low delay is required for the datagram transfer (D = 1) or if the delay is not critical (D = 0); The throughput bit T = 1 when a high throughput is needed, instead T = 0 if the throughput is not a critical issue; The reliability bit R = 1 when a high reliability is required, instead R = 0 if reliability is not needed. The last two bits are unused. - +B Yo ew N ia ed M ss ne us i TL, Total Length (16 bits): This field specifies the total length of the IP datagram in bytes. Since this field is 16 bits wide, the maximum length of an IP datagram is 65,535 bytes (typically, they are much smaller to avoid fragmentation due to MAC layer constraints). The most common IP packet length is 1500 bytes to be compatible with the maximum Ethernet payload size. rk The ToS byte has never been used as originally defined. A great deal of experimental, research and deployment work has focused on how to use these 8 bits (ToS field), which have been redefined by IETF for use by Differentiated Services (DiffServ) and by Explicit Congestion Notification (ECN); see also the following Section 3.5 and sub-Sections 3.7.8.2, 3.7.8.3. Sp r in ge r Sc ie nc e Identification (16 bits): This field contains a 16-bit value, which is common to each fragment belonging to the same message. It is filled in for originally-unfragmented datagrams, in case they have to be fragmented at an intermediate router along the path. Such field is used by the recipient to reassemble messages in order to avoid an accidental mixing of fragments coming from different messages, since the IP datagrams can be received out of order. ci al us e. © Flags (3 bits): It contains three control flags, but only two of them are used: Do not Fragment (DF) flag and More Fragments (MF) flag. If DF = 1, the datagram should not be fragmented. MF = 0 denotes the last fragment of a datagram. or c om m er Fragment Offset (13 bits): When a message is fragmented, this field specifies the position of the current data fragment in the overall message. It is specified in units of 8 bytes (64 bits). The first fragment has an offset of 0. Th is sa m pl e is no tf TTL, Time To Live (8 bits): This field specifies how long a datagram is allowed to “live” in the network in terms of router hops. Each router decrements the TTL value of one, before transmitting the related datagram. If TTL becomes zero, the datagram is not forwarded, but is Th e pl m sa is al ci er m om or c tf no e. us © Sp r ge r in ss ne us i +B nc e ie Sc ia ed M ew N Yo rk EXTRACT FROM PART II Chapter 6 ss M ed ia N ew Yo rk M/G/1 QUEUING THEORY AND APPLICATIONS +B us i ne 6. M/G/1 QUEUING THEORY AND APPLICATIONS nc e 6.1 The M/G/1 queuing theory or c om m er ci al us e. © Sp r in ge r Sc ie The M/G/1 theory is a powerful tool, generalizing the solution of Markovian queues to the case of general service time distributions. There are many applications of the M/G/1 theory in the field of telecommunications; for instance, it can be used to study the queuing of fixed-size packets to be transmitted on a given link (i.e., M/D/1 case). Moreover, this theory yields results, which are compatible with the M/M/1 theory, based on birth-death Markov chains. In the M/G/1 theory, the arrival process is Poisson with mean arrival rate , but, in general, the service time is not exponentially distributed. Hence, the service process has a certain memory: if there is a request in service at a given instant, its residual service time has a distribution depending on the time elapsed since the beginning of its service. Let us refer to a generic instant t. The system is described by a two-dimensional state S(t), characterized as follows: tf Number of requests in the system at instant t, n(t); Th is sa m pl e is no Elapsed time from the beginning of the service of the currently-served request, (t). Note that in the Markovian M/M/1 case, the pdf of the residual service time does not depend on (t) because of the memoryless property of the exponential distribution. 454 QUEUING THEORY AND TELECOMMUNICATIONS Hence, S(t) = {n(t), (t)}. In order to characterize these queues, we study their behaviors at specific time instants i where we obtain a monodimensional simplification of state S(i). The M/G/1 queue is studied at specific imbedding instants, where we obtain again a Markovian system; this is a so-called imbedded Markov chain [1],[2]. Different alternatives are available to select instants i. It is not requested that instants i be equally spaced in time. Typical choices for i instants are: 1. Service completion instants; Yo rk 2. Arrival instants {as done for G/M/1 queues to study the waiting time [3]}; in ge r Sc ie nc e +B ed M ss ne us i It makes a difference how we select the imbedding points: different imbedding options in general do not allow to achieve the same results. In this study, let us refer to the first type of imbedding points: let i denote the service completion instant of the i-th request arrived at the queue. We have that (i) 0 i, since at instant i a request has completed its service and no new request has yet started its service. Hence, at these instants i the state becomes mono-dimensional: S(i) n(i) = ni, where ni denotes the number of requests in the queue soon after the service completion of the i-th request. Let ai denote the number of requests arrived at the queue during the service time of the i-th request (ending at instant i). Note that ni and ai random variables are also used with different imbedding points, but the distributions of both ni and ai depend on the imbedding instants selected. ia N ew 3. Regularly-spaced instants for cases with service based on time slots. Sp r New arrival e. nj = 0 al us ai+ 1 i+2 ci i+1 er i © Depa rture instants ni+1 ni 0 j+1 time Case (b) or c om m Case (a) j aj+ 1 tf Figure 6-1. Time diagram of service completion events and new arrivals. Th is sa m pl e is no Let us refer to the situation depicted in Figure 6.1. If ni 0 [i.e., case (a) in Figure 6.1], the following balance is valid at the next service completion instant: ni+1 = ni – 1 + ai+1. Instead, if ni = 0 [i.e., case (b) in Figure 6.1], we 455 Chapter 6 have to wait for the next arrival, which is served immediately, so that at the next completion instant i+1 the system contains only the arrivals occurred during the service time of the last request; this number is still represented by variable ai+1. Hence, we have: ni+1 = ai+1. Let us recall that the indicator (Heaviside) function is defined as: I(x) = 1 for x > 0; I(x) = 0 for x ≤ 0. By means of function I(x), we can represent ni+1 with an expression, which is valid for both ni 0 and ni = 0, as shown below where we have also provided alternative notations adopted in the literature: ni 1 ni I ni ai 1 maxni 1, 0 ai 1 ni 1 ai 1 (6.1) in ge r Sc ie nc e +B Yo ew N ia ed M ss ne us i The difference equation (6.1) describes the behavior of the M/G/1 queue at imbedding instants. Since the variables at the instant i+1 depend only on the variables at instant i , equation (6.1) characterizes the M/G/1 system by means of a discrete-time Markov chain (or, more correctly, an imbedded Markov chain). Note that the method of imbedding instants is quite general and has also been applied to study G/M/1 queues (general iid interarrival times; exponentially-distributed service times; one server). In this case, the chain is imbedded at the arrival instants of the input process [3]. Let G(t) denote the PDF of the service time, X: G(t) = Prob{X t}. Let g(t) denote the pdf of the service time: g(t) = dG(t)/dt. The mean service time is indicated as E[X]. Let us assume that the M/G/1 queue admits a steady state with Pn denoting the probability (at regime) to have n requests in the queue at imbedding instants: rk i © i Sp r lim Pni 1 lim Pni Pn us e. Hence, we have: ci i er i al lim E ni 1 lim E ni En, where E n denotes the regime value. om m By taking the expected values of both sides of (6.1), we have: tf or c E ni 1 E ni E I ni E ai 1 (6.2) Th is sa m pl e is no Hence, if we take the limit of both sides for i , we obtain regime values as: 456 QUEUING THEORY AND TELECOMMUNICATIONS E n E n E I n E a E a E I n We can evaluate E[I(n)] by means of the state probability distribution as: n 0 n 1 E I n I n Pn Pn 1 P0 def (6.3) Yo P0 1 E a rk By using (6.3) and the expression at regime corresponding to (6.2), we can obtain probability P0 as: +B ed M ss ne us i Let us recall that on the basis of the PASTA property P0 (or 1P0) is the probability that a new arrival finds an empty (or a non-empty) M/G/1 queue. The mean number of arrivals during the service time of a request, E[a], can be obtained as the mean number of Poisson arrivals conditioned on a given service time X = t, E[a | X = t] = t, and, then, by removing the conditioning by means of the pdf g(t) of X: ia N ew (6.4) (6.5) ie 0 Sc 0 nc e E a E a | X t g t dt tg t dt E X ci er i m z ni 1 z ni I ni ai 1 , al us e. © Sp r in ge r From (6.5) we note that E[a] corresponds to the traffic intensity expressed in Erlangs, . The M/G/1 queue is stable if P0 > 0 or, equivalently on the basis of (6.4) and (6.5), if < 1 Erlang. We focus here on the solution of the difference equation (6.1) in the z domain by means of PGFs. First of all, we consider the equality obtained by taking the exponentiation with base z on both sides of (6.1) for any index i value: Th is sa m pl e is no tf or c om Then, we multiply both sides by the joint distribution Prob{ni+1=h, ni=k, ai+1=j} and we sum over h, k, j. The summations on k and j can be removed on the left side; moreover, the summation on h can be removed on the right side. Details are as follows: 457 Chapter 6 left side : z h k ni 1 Pni1 , ni , ai 1 z ni1 Pni1 , ni , ai1 z ni 1 Pni1 h j k j h right side : z h k ni I ni a i 1 Pni1 , ni , ai1 z ni I ni ai 1 Pni1 , ni , ai1 k j j h z ni I ni ai1 Pni , ai1 rk j Yo k In order to solve the imbedded Markov chain we make the following assumptions: nc e +B 2. Arrival process independent of the number of requests in the queue: ni and ai+1 are independent variables (2). © e. j (6.7) us k om m er ci al h Pni 1 z ni I ni Pni z ai 1 Pai 1 Sp r in ge r Sc ie The above assumptions are quite general and can be met by many systems. In particular, they are verified in the special case of Poisson arrivals and general service time, which are both independent of the queue state. Under the previous assumption #2, Prob{ni=k, ai+1=j} = Prob{ni=k} Prob{ai+1=j}. Therefore, the left side in (6.6) can be rewritten as: ni 1 1 is sa m pl e is no tf or c In the case of continuous-time processes, we have to consider Poisson (or compound Poisson) processes. Instead, in the case of discrete-time processes, we have to consider Bernoulli or Binomial arrival processes on a slot basis (in this respect, symbol M used to denote the arrival process at the queue has to be considered in a wider sense and as such it will be substituted by ‘M’). 2 Note that it is also possible to solve (6.6) by removing such assumption: we obtain a recursive formula to determine the state probabilities Pn at imbedding instants. More details are provided in the following Section 6.5. Th N us i 1. Memoryless arrival process (1); z ia (6.6) j ed k M h Pni 1 z ni I ni ai 1 Pni ,ai 1 ss ni 1 ne z ew By equating the two expressions above, we obtain: 458 QUEUING THEORY AND TELECOMMUNICATIONS Let P(z) denote the PGF at regime of the state probability distribution at the imbedding instants. Let A(z) denote the PGF at regime of the number of arrivals during the service time of a request. Moreover, note that: n i I ni k 0 Pni P0i z ni 1Pni P0i z 1 z ni Pni k 1 k 1 (6.8) P0i z z ni Pni P0i k 0 rk 1 Yo z ss ne us i z 1A( z ) +B (6.10) z A( z ) nc e P z z A( z ) P0 z 1A( z ) P z P0 sa m pl e is no tf or c om m er ci al us e. © Sp r in ge r Sc ie The PGF of the state probability distribution in (6.10) represents a quite general formula, which can be applied to all the imbedded Markov chains fulfilling (6.1) and the previous assumptions #1 and #2. In particular, the PGF in (6.10) is valid for any service policy, provided that the conditions of the insensitivity property are fulfilled (see Section 5.5). Since P0 is determined from (6.4), the PGF of the state probability distribution depends only on the PGF A(z), which, in turn, depends on both the arrival process and the imbedding instants. The state probability distribution can be obtained by inverting (6.10). This is not an easy task, since there may not be a closed form solution: the PGF in (6.10) typically does not correspond to a classical distribution. A possible approach to invert P(z) is to adopt the method of the Taylor series expansion centered at z = 0, as show in Section 4.3.1: the coefficients of the expansion represent the state probability distribution. This approach requires a numerical method based on the Matlab® symbolic toolbox. Another method to invert (6.10) is described in Section 6.5. By means of (6.4), the stability condition P0 > 0, can be expressed as follows, noticing that E[a] = A'(z=1): is N ia (6.9) Finally, we can solve P(z) in (6.9): Th ed P z P0 z 1 P z P0 A( z ) M ew By considering the situation at regime (i.e., for i ), we can eliminate subscript i in equations (6.7) and (6.8). Then, we substitute (6.8) in equation (6.7) where we use the PGFs P(z) and A(z): 459 Chapter 6 P0 1 A' (1) 0 A' (1) 1 Erlang Under the assumption of Poisson arrivals and imbedding at the service completion instants, A(z) can be derived considering the PGF of the number of arrivals in a given interval X = t, A(z | X = t) = et(z1) and then removing the conditioning by means of the general pdf of the service time X, g(t): A( z ) et z 1 g t dt s z 1 rk (6.11) Yo 0 ' z 1 z 1 ' 0 E X M (6.12) ss z 1 2 +B (6.13) ie 2 Sc ' ' 0 E X 2 nc e d 2 A( z ) d ' z 1 2 ' ' z 1 z 1 2 dz z 1 dz z 1 us i ne dA( z ) dz ed ia N ew where (s) denotes the Laplace transform of the pdf g(t). On the basis of the expression of A(z) in (6.11) we can evaluate A'(1) and A''(1) as follows: in ge r Note that (6.12) is equivalent to (6.5). m er ci al us e. © Sp r The PGF in (6.10) has a singularity at z = 1 (a removable singularity according to the Abel theorem), which causes some problems for both the normalization condition and the derivation of the moments of the distribution. Of course, we can use the Hôpital theorem to prove that P(z = 1) = 1 (normalization). Moreover, the moments of the state probability distribution can be obtained by taking subsequent derivatives on both sides of the leftmost expression in (6.10). With the first derivative, we have: or c om P ' z z A( z ) P z 1 A' ( z ) P0 A( z ) P0 z 1A' ( z ) (6.14) Th is sa m pl e is no tf If we evaluate (6.14) at z = 1, we obtain: P0 = 1 – A'(1); this is the same expression as in (6.4). If we derive again (6.14) on both sides with respect to z we obtain: 460 QUEUING THEORY AND TELECOMMUNICATIONS P ' ' z z A( z ) 2 P' z 1 A' ( z ) P z A' ' ( z ) 2 P0 A' ( z ) P0 z 1A' ' ( z ) (6.15) If we evaluate (6.15) at z = 1 and we use (6.4) for P0, we have: 2 P' 11 A' (1) A' ' ( z ) 2 P0 A' (1) (6.16) +B ew N ia ed M ss us i The mean number of requests in the queue at imbedding instants, N, depends on the first two derivatives of A(z) computed at z = 1. Let us recall that the stability condition is met if 1 – A'(1) > 0, i.e., traffic intensity is lower than 1 Erlang. Note that (6.16) is a general expression, which could also be applied to memoryless arrival processes different from the Poisson one provided that the imbedded system is characterized by (6.1). If we refer to Poisson arrivals (i.e., the classical M/G/1 queue) and imbedding points at service completion instants, we can substitute (6.12) and (6.13) in (6.16), thus yielding: Yo rk A' ' ( z ) 21 A' (1) ne N P ' 1 A' (1) nc e 2 E X 2 N E X 21 E X Sc ie (6.17) us E X 2 21 E X al E X (6.18) ci N m er T e. © Sp r in ge r We can derive the mean delay to cross the queuing system, T, by applying the Little theorem to (6.16) for the more general case or to (6.17) for the Poisson arrival case. In particular, referring to (6.17), we obtain the well-known Pollaczek-Khinchin formula for the mean queuing delay [1],[2],[4]: Th is sa m pl e is no tf or c om Note that in (6.18) the first contribution to the mean delay is E[X], i.e., the mean service time; instead, the second contribution E[X2]/{2[1E[X]]} represents the mean waiting time. The mean queuing delay is related to the second moment of the service time distribution. In particular, the mean waiting time increases with the variance of the service time, considering a certain fixed mean service time. If the traffic intensity of the input arrival process, E[X], tends to 1 Erlang (stability limit), the mean delay tends to infinity. Sc ie nc e +B Yo ew N ia ed M ss ne us i In the case of exponentially-distributed service times (mean rate ), the above formulas (6.17) and (6.18) yield the same expressions of the M/M/1 queue as shown in Chapter 5. In this case, we have (s) = /(+s), E[X] = 1/ and E[X2] = 2/As shown in [1],[2], this result permits to conjecture that the state probability distribution obtained for an M/G/1 system at the imbedding instants is also valid in general for the continuous-time chain. These considerations can be supported more formally introducing the Kleinrock principle [1]: for queuing systems where the state changes at most by +1 or −1 (we refer here to actual changes in the number of requests in the queue and not to what happens only at imbedding instants), the state distribution as seen by an arriving customer is the same as that seen by a departing customer. Hence, the state probability distribution at departure instants is equal to the state probability distribution at arrival instants. Moreover, by applying the PASTA property (in the Poisson arrival case), the state probability distribution at arrival instants is also valid at generic instants (random observer). Hence, by means of both the Kleinrock principle and the PASTA property, we can conclude that the state probability distribution at service completion instants coincides with the distribution of the continuous-time system (random observer). As for discrete-time (Markov) systems, the equivalent BASTA property can be adopted to determine the probability that an arrival finds the queue in a certain state by means of the corresponding state probability. rk 461 Chapter 6 ge r 6.1.1 The M/D/1 case m er ci al us e. © Sp r in In this system the requests have a fixed, constant service time, x. This is for instance the case of the transmission of packets of a given size on a link with constant capacity. Therefore, the pdf of the service time becomes g(t) = (tx), where (.) denotes the Dirac Delta function. The corresponding Laplace transform is (s) = exs. By using (6.11), we have: A(z) = (s)|s=(z1) = ex(z1). Note that x is the intensity of the input traffic in Erlangs. By substituting this expression of A(z) in (6.10), we obtain P(z) with imbedding points at the service completion instants as: or c om z 1e x z 1 P z 1 x x z 1 tf ze (6.19) Th is sa m pl e is no Note that the PGF of an M/D/1 queue in (6.19) cannot be antitransformed in closed form, so that numerical methods (as those discussed in Section 4.3.1) are needed to obtain the state probability distribution. 462 QUEUING THEORY AND TELECOMMUNICATIONS Finally, the mean number of requests in the queue N can be expressed according to (6.17) as: 2 x 2 x 2 x 2 N x 21 x 1 x 21 x (6.20) ss M ed ia N ew Yo rk Hence, N has [rightmost term in (6.20)] a contribution corresponding to that of an M/M/1 queue (with the same mean arrival rate and the same mean service time) minus a positive term. Hence, the congestion of an M/D/1 queue is lower than that of the corresponding M/M/1 queue. The same relation holds for the mean system delay given by (6.18). This is consistent with the fact that for the same mean service time the exponential distribution has a mean square value two times larger than that of a deterministic distribution. us i ne 6.1.2 The M[comp]/G[b]/1 queue with bulk arrivals or bulk service Th is sa m pl e is no tf or c om m er ci al us e. © Sp r in ge r Sc ie nc e +B The queue with bulk (compound) arrivals (as defined in Section 5.1.1) and imbedding instants at the end of the service of each object entails a modification in (6.1) when ni = 0: when the service is completed for the first object of a group arrived at an empty system, the remaining objects in the queue are not only those arrived during the service time of this object, but also the remaining objects belonging to the same group arrived at an empty system. Let m denote the random variable of the length of a group in objects. Then, the difference equation in (6.1) for ni = 0 becomes: ni+1 = ai+1*, where ai+1* = m1+ ai+1; this model corresponds to the differentiated service time case detailed in Section 6.10. According to the previous notations, this queuing system can be denoted as M[comp]/G/1. In the bulk service case, b arrivals (= objects) can be serviced together in the imbedding interval. This is for instance the case of TDM(A) transmissions with a frame-based allocation of packets having fixed service time: the imbedding points are here at the end of each frame. With bulk service, the difference equation (6.1) has to be modified when ni 0, thus obtaining the following expression: ni+1 = max(ni b, 0) + ai+1. According to the previous notations, this queuing system can be denoted as M/G[b]/1; in the TDM(A) case we have actually an M/D[b]/1 queue. More details on the solution of these cases (including the consideration of different imbedding options) will be provided in Section 6.7. 463 Chapter 6 6.2 M/G/1 system delay distribution in the FIFO case N ew Buffer M ed ia Arrival instant of the black packet at the queue finding other packets inside Yo rk This Section provides an extension of the study made in Section 5.11.1 to the case of general service times. As long as possible, we keep the same notations as those used in Section 5.11.1. Let us refer to a queue with FIFO discipline, Poisson arrivals, general service time, and system imbedded at service completion instants. The n requests left in the system at the service completion instant are those arrived during the system delay TD experienced by the request just served; see Figure 6.2. nc e +B us i Completion instant of the black packet leaving n packets in the queue arrived in the meanwhile. These are also the packets in the queue at at the imbedding instants, as modeled by PGF P(z) in (6.10) Buffer ne ss After time TD Sc ie n requests Sp r in ge r Figure 6-2. Relation between random variable TD of the queuing delay and the PGF P(z) of the number of requests n in the queue at imbedding instants. or c om m er ci al us e. © The probability distribution for the n requests in the system at the service completion instants coincides with the state probability distribution with PGF P(z) in (6.10). This PGF of random variable n can also be obtained referring to the fact that these n requests are the arrivals at the system during the system delay TD, with corresponding pdf fD(t) [note that fD(t) is the unknown distribution that we need to characterize]. Let us first condition our study on a given system delay TD = t, so that the PGF of the number of Poisson arrivals in this interval is: P(z | TD = t) = et(z1). Then, we remove the conditioning by means of the pdf fD(t) as: tf no P z et z 1 f D t dt TD s z 1 e is 0 Th is sa m pl where TD(s) is the Laplace transform of the pdf fD(t). (6.21)