1.09k likes | 1.32k Views
Modeling and Analysis of Computer Networks. Ali Movaghar Winter 2009. Main subjects to be studied. A brief history of computer networks, Principal concepts being used in computer networking, Applications of queueing theory to modeling and analysis of computer communication networks
E N D
Modeling and Analysis of Computer Networks Ali Movaghar Winter 2009
Main subjects to be studied • A brief history of computer networks, • Principal concepts being used in computer networking, • Applications of queueing theory to modeling and analysis of computer communication networks • Other mathematical modeling of computer networks, • State of arts in computer networking,
Types of networks of particular interest • Mobile ad hoc networks • Wireless sensor networks • Peer-to-peer networks • Overlay networks • Web
Textbooks Main Textbook: • D. Bertsekas and R. Gallager, “Data Networks,” 2nd Ed., Prentice-Hall, Inc., 1992. Secondary Textbooks: • A. Tanenbaum, “Computer Networks,” 4th Ed., Prentice-Hall, Inc., 2003. • J.F. Kurose and K.W. Ross, “Computer Networking: A top-down Approach Featuring the Internet,” Addison-Wesley, 2000.
Other references • Recent papers in computer networking which have appeared in renowned national and international conferences or journals.
Grading Policy • Simulation Tools: 10% • Research Papers: 25% • Midterm Exam: 20% • Final Exam: 45%
Computer Networks and Distributed Systems • Computer networks: A collection of autonomous computers interconnected by a single technology. • Two computers are interconnected if they are able to exchange information. • Distributed Systems: A collection of independent computers which appears to its users as a single coherent system. It usually has a single model or paradigm that it presents to its users. • Often a layer of software on top of the operating system, called middleware, is responsible for implementing this model.
Computer Networks: A Brief History and the Future • Why computer networking? • How was it evolved? • What is the impact of computer networking in our life? • The Internet • Wireless mobile computing
A History of Computer Systems Mainframes (1944-) Minicomputers (1960-) Personal Computers and Workstations (1970-)
The 1st Generation: The tube-based mainframe In 1944 ENIAC (electronic numerical integrator and calculator ) was placed in operation at the Moore School. It had thirty separate units, plus power supply and forced-air cooling, and weighed over thirty tons. It included 19,000 vacuum tubes, 1,500 relays, and hundreds of thousands of resistors, capacitors, and inductors consumed almost 200 kilowatts of electrical power. ENIAC was originally used for ballistics, but played a role in the development of the atomic bomb.
The 2nd Generation: Transistor Computer Systems In 1959 The fully transistorized IBM 7090 computer system delivered. The system had computing speeds up to five times faster than those of its predecessor, the IBM 709. It was both a scientific and business machine.
The 3rd Generation computers: Multiprocessing and operating systems make the scene In 1965 IBM ships the midrange 360 model 40 computer which had COBOL and FORTRAN programming languages available as well as the stock Basic Assembly Language (BAL) assembler. In 2007 IBM produces the Blue-Gene/P, a system capable of a petaflop (1,000,000 gigaflops or 1,000 teraflops). • It sports 73,728 processors comprised of four cores each of IBM’s 850MHz PowerPC 450, resulting in 294,912 cores. • The system can be scaled to nearly three times that size, resulting in a 3 petaflop capability and is all hooked up via a high-end optical network.
Minicomputers A minicomputer (colloquially, mini) is a class of multi-user computers that lies in the middle range of the computing spectrum, in between the largest multi-user systems (mainframe computers) and the smallest single-user systems (microcomputers or personal computers).
A History of Minicomputers The term "mini computer" evolved in the 1960s to describe the "small" third generation computers that became possible with the use of transistor and core memory technologies. They usually took up one or a few cabinets the size of a large refrigerator or two, compared with mainframes that would usually fill a room. The first successful minicomputer was IBM’s 16-bit IBM 1130, which cost from US$32,280 upwards when launched February 11, 1965. Digital Equipment Corporation’s 12-bit PDP-8, which cost from US$16,000 upwards was launched March 22, 1965.
Personal Computers and Workstations A personal computer (PC) is any computer whose original sales price, size, and capabilities make it useful for individuals, and which is intended to be operated directly by an end user, with no intervening computer operator. Throughout the late 1970s and into the 1980s, computers were developed for household use, offering personal productivity, programming and games. Workstations are somewhat larger and more expensive systems (although still low-cost compared with minicomputers and mainframes) were aimed for office and small business use.
Time Sharing of Mainframes and Minicomputers Time-sharing refers to sharing a computing resource among many users by multitasking. Because computers in interactive use often spend much of their time idly waiting for user input, it was suggested that multiple users could share a machine by allocating one user's idle time to service other users. Similarly, small slices of time spent waiting for disk, tape, or network input could be granted to other users.
History of Time Sharing The concept was first described publicly in early 1957 by Bob Bemeras part of an article in Automatic Control Magazine. The first project to implement a time-sharing system was initiated by John McCarthy in late 1957, on a modified IBM 704, and later an additionally modified IBM 7090 computer. It influenced the design of other early timesharing systems developed by Hewlett Packard, Control Data Corporation, UNIVAC and others (in addition to introducing the BASIC programming language).
Computer Networks • Computer networks: A collection of autonomous computers interconnected by a single technology. • Two computers are interconnected if they are able to exchange information.
Network Hardware • Network hardware has two important aspects: transmission technology and Scale. • There are two types of transmission technologies: broadcast and point to point (switched).
Broadcast Networks • Broadcast networks have a single communication channel that is shared by all the machines in the network. • Multicasting: a mode of broadcasting that supports transmission only to a subset of machines.
Point-to-Point (Switched) Computer Networks • Point-to-point (Switched) computer networks consist of many connections between individual pairs of machines. To go from the source to the destination, a packet must have to visit one or more intermediate machines.
Local Area Networks (LANs) • They are distinguished by their transmission technology and their topology. • Traditional LANs run at speeds 10Mbps and 100 Mbps, have low delay (microseconds or nanoseconds), and make few errors. • Newer LANs operate at up to 10 Gbps.
Local Area Networks (LANs) Bus Ring • Various topologies are possible for broadcast LANs: Bus and Ring. • Examples: Ethernet (IEEE 802.3), token ring (IEEE 802.5), FDDI, Wireless LAN (IEEE 802.11).
Metropolitan Area Networks (MANs) • Examples: Cable television networks, DQDB, Wireless MAN (IEEE 802.16)
Metropolitan Area Networks A metropolitan area network based on cable TV.
Wide Area Networks • Wide Area Networks or WANs consist of hosts and communication subnet. • A communication subnet consists of transmission lines and switching elements.
A Taxonomy of Computer Networks Computer Networks SwitchedComputer Networks BroadcastComputer Networks Computer networks can be classified based on the way in which the nodes exchange information Packet-SwitchedComputer Networks Circuit-SwitchedComputer Networks Virtual Circuit Networks Datagram Networks
Broadcast vs. Switched Computer Networks • Broadcast computer networks • information transmitted by any node is received by every other node in the network • examples: usually in LANs (Ethernet, Wavelan) • Problem: coordinate the access of all nodes to the shared communication medium (Multiple Access Problem) • Switched computer networks • information is transmitted to a sub-set of designated nodes • examples: WANs (Telephony Network, Internet) • Problem: how to forward information to intended node(s) • this is done by special nodes (e.g., routers, switches) running routing protocols
Circuit Switching • Three phases • circuit establishment • data transfer • circuit termination • If circuit not available: “Busy signal” • Examples • Telephone networks • ISDN (Integrated Services Digital Networks)
Circuit Establishment Data Transmission Circuit Termination Timing in Circuit Switching Host 1 Host 2 Node 1 Node 2 DATA processing delay at Node 1 propagation delay between Host 1 and Node 1 propagation delay between Host 2 and Host 1
Circuit Switching A node (switch) in a circuit switching network Node incoming links outgoing links
Packet Switching • Data are sent as formatted bit-sequences, so-called packets. • Packets have the following structure: • Header and Trailer carry control information (e.g., destination address, checksum) • Each packet is passed through the network from node to node along some path (Routing) • At each node the entire packet is received, stored briefly, and then forwarded to the next node (Store-and-Forward Networks) • Typically no capacity is allocated for packets Header Data Trailer
Packet Switching A node in a packet switching network Node incoming links outgoing links Memory
Datagram Packet Switching • Each packet is independently switched • each packet header contains destination address • No resources are pre-allocated (reserved) in advance • Example: IP networks
Packet 1 Packet 1 Packet 1 Packet 2 Packet 2 Packet 2 Packet 3 Packet 3 Packet 3 Timing of Datagram Packet Switching Host 1 Host 2 Node 1 Node 2 propagation delay between Host 1 and Node 2 processing & queueingdelay of Packet 1 at Node 2 transmission time of Packet 1 at Host 1
Datagram Packet Switching Host C Host D Host A Node 1 Node 2 Node 3 Node 5 Host B Host E Node 7 Node 6 Node 4
Virtual-Circuit Packet Switching • Hybrid of circuit switching and packet switching • data is transmitted as packets • all packets from one packet stream are sent along a pre-established path (=virtual circuit) • Guarantees in-sequence delivery of packets • However: Packets from different virtual circuits may be interleaved • Example: ATM networks
Virtual-Circuit Packet Switching • Communication with virtual circuits takes place in three phases • VC establishment • data transfer • VC disconnect • Note: packet headers don’t need to contain the full destination address of the packet
Packet 1 Packet 1 Packet 1 Packet 2 Packet 2 Packet 2 Packet 3 Packet 3 Packet 3 Timing of Virtual Circuit Packet Switching Host 1 Host 2 Node 1 Node 2 propagation delay between Host 1 and Node 1 VC establishment Data transfer VC termination
Virtual Circuit Packet Switching Host C Host D Host A Node 1 Node 2 Node 3 Node 5 Host B Host E Node 7 Node 6 Node 4
Packet-Switching vs. Circuit-Switching • Most important advantage of packet-switching over circuit switching: Ability to exploit statistical multiplexing: • efficient bandwidth usage; ratio between peek and average rate is 3:1 for audio, and 15:1 for data traffic • However, packet-switching needs to deal with congestion: • more complex routers • harder to provide good network services (e.g., delay and bandwidth guarantees) • In practice they are combined: • IP over SONET, IP over Frame Relay
Network Software Network Architecture Protocol Hierarchy Layering • The number of layers • The protocols defined in each layer
What is Layering? • A technique to organize a network system into a succession of logically distinct entities, such that the service provided by one entity is solely based on the service provided by the previous (lower level) entity.
Why Layering? HTTP Packet radio FTP NFS Telnet Application Coaxial cable Fiber optic Transmission Media No layering: each new application has to be re-implemented for every network technology!
Why Layering? HTTP Packet radio FTP NFS Telnet Application Intermediate layer Coaxial cable Fiber optic Transmission Media Solution: introduce an intermediate layer that provides a unique abstraction for various network technologies
Layering • Advantages: • Modularity – protocols easier to manage and maintain • Abstract functionality –lower layers can be changed without affecting the upper layers • Reuse – upper layers can reuse the functionality provided by lower layers • Disadvantages: • Information hiding – inefficient implementations
ISO OSI Reference Model • ISO – International Standard Organization • OSI – Open System Interconnection • Started in 1978; first standard in 1979 • ARPANET started in 1969; TCP/IP protocols ready by 1974 • Goal: a general open standard • Allow vendors to enter the market by using their own implementation and protocols
ISO OSI Reference Model Application Application Presentation Presentation Session Session Transport Transport Network Network Network Datalink Datalink Datalink Physical Physical Physical Physical medium Seven layers • Lower three layers are peer-to-peer • Next four layers are end-to-end
Data Transmission data data data data data data data data data data data data data data • A layer can use only the service provided by the layer immediate below it • Each layer may change and add a header to data packet