Department of Engineering Science ES465/CES 440, Intro. to Networking & Network Management Introduction & Overview http://www.sonoma.edu/users/k/kujoory References • “Computer Networks & Internet,” Douglas Comer, 6th ed, Pearson, 2014, Ch 1, Textbook, 5th ed, slides by Lami Kaya (LKaya@ieee.org) with some changes. • “Computer Networks,” A. Tanenbaum, 5th ed., Prentice Hall, 2011, ISBN: 13:978013212695-3. • “Computer & Communication Networks,” Nader F. Mir, 2nd ed, Prentice Hall, 2015, ISBN: 13: 9780133814743. • “Data Communications Networking,” Behrouz A. Forouzan, 4th ed, Mc-Graw Hill, 2007 • “Data & Computer Communications,” W. Stallings, 7th ed., Prentice Hall, 2004. • “Computer Networks: A Systems Approach," L. Peterson, B. Davie, 4th Ed., Morgan Kaufmann 2007. Ali Kujoory 6/30/2016 Not to be reproduced without permission 1 Topics Covered • 1,1 Growth of Computer Networking • 1.2 Why Networking Seems Complex • 1.3 The Five Key Aspects of Networking • 1.4 Public & Private Parts of the Internet • 1.5 Networks, Interoperability, & Standards • 1.6 Protocol Suites & Layering Models • 1.7 How Data Passes Through Layers • 1.8 Headers & Layers • 1.9 ISO & the OSI Seven-Layer Reference Model • 1.10 Remainder of the Text Ali Kujoory 6/30/2016 Not to be reproduced without permission 2 1.1 Growth of Computer Networking • Computer networking has grown explosively • Since the 1970s, computer communication has changed from a research topic to an essential part of infrastructure • Networking is used in every aspect of our lives: – – – – – – – Business Advertising Production Shipping Planning Billing Accounting • Educational institutions are using computer networks – to provide students & teachers with access to online information • Federal, state, & local government offices use networks Ali Kujoory 6/30/2016 Not to be reproduced without permission 3 1.1 Growth of Computer Networking • In short, computer networks are everywhere • In 1980, the Internet was a research project that involved a few dozen sites • Today, the Internet has grown into a communication system that reaches all of the world • The advent & utility of networking has created dramatic economic shifts – Network has made telecommuting available to individuals – It has changed business communication – An entire industry emerged that develops networking technologies, products, & services – The importance of computer networks has produced a demand in all industries for people with more networking expertise – Companies need workers to plan, acquire, install, operate, & manage the hardware & software systems for networks Ali Kujoory 6/30/2016 Not to be reproduced without permission 4 1.2 Why Networking Seems Complex • The networking subject seems complex, because – Many technologies exist – Each technology has features that distinguish it from the others – Companies create commercial network products & services • often by using technologies in new unconventional ways – Computer networks seem complex • because technologies can be combined & interconnected in many ways • Computer networks can be especially confusing to a beginner because – No single underlying theory exists that explains the relationship among all parts – Multiple organizations have created computer networks standards • some standards are incompatible with others – Various organizations have attempted to define conceptual models – The set of technologies is diverse & changes rapidly • models are either so simplistic that they do not distinguish among details, or • so complex that they do not help simplify the subject Ali Kujoory 6/30/2016 Not to be reproduced without permission 5 1.2 Why Networking Seems Complex • The lack of consistency in the field has produced another challenge for beginners: – Multiple groups each attempt to create their own terminology – Researchers adhere to scientifically precise terminology – Marketing teams often invent new terms to distinguish their products or services from others – Technical terms are confused with the names of popular products – Professionals sometimes use a technical term from one technology when referring to an analogous feature of another technology – A large set of terms & acronyms that contains many synonyms – Computer networking jargon contains terms that are often abbreviated, misused, or associated with products Ali Kujoory 6/30/2016 Not to be reproduced without permission 6 1.3 The Five Key Aspects of Networking • To master the complexity, it is important to gain a broad background that includes five key aspects: – 1.3.1 Network Applications & Network Programming – 1.3.2 Data Communications – 1.3.3 Packet Switching & Networking Technologies – 1.3.4 Internetworking with TCP/IP – 1.3.5 Additional Networking Concepts & Technologies • These topics will be covered throughout the book • In this chapter a brief introduction will be given Ali Kujoory 6/30/2016 Not to be reproduced without permission 7 1.3.1 Network Applications & Network Programming • Network services are provided by an application software – an application on one computer communicates across a network with an application program running on another computer • Network applications span a wide range, such as: – – – – – – email file transfer web browsing voice telephone calls (VoIP) distributed databases audio/video teleconferencing • Each application offers a specific service with its own form of user interface – But all applications can communicate over a single, shared network Ali Kujoory 6/30/2016 Not to be reproduced without permission 8 1.3.1 Network Applications & Network Programming • A unified underlying network that supports all applications makes a programmer's job much easier – programmer needs to learn only about one interface to network & one basic set of functions to be used – it is possible to understand network applications, & even possible to write code that communicates over a network, without understanding the hardware/software technologies – once a programmer masters the interface, no further knowledge of networking may be needed • However, a programmer who understands the underlying network mechanisms & technologies can write network applications that are faster, more reliable, and less vulnerable Ali Kujoory 6/30/2016 Not to be reproduced without permission 9 1.3.2 Data Communications • Data communications refers to the study of low-level mechanisms & technologies used to send information across a physical communication medium – such as a wire, radio wave, or light beam • Data communications focuses on ways to use physical phenomena to transfer information – the subject may only seem useful for engineers who design low-level transmission facilities • However, we will see that several key concepts that arise from data communications influence the design of many protocol layers • Data communications provides a foundation of concepts on which the rest of networking is built Ali Kujoory 6/30/2016 Not to be reproduced without permission 10 1.3.3 Packet Switching & Networking Technologies • In 1960s, the packet switching concept revolutionized data communications • Early communication networks had evolved from circuit switching (telegraph & telephone systems) – A physical pair of wires between two parties to form a dedicated circuit • Although mechanical connection of wires was being replaced by electronic switches, but the underlying paradigm remained the same: – form a circuit & then send information across the circuit • Packet switching changed networking in a fundamental way – – – – – Provides the basis for the modern Internet Allows multiple users to share a network Divides data into small blocks, called packets Includes an identification of the intended recipient in each packet Devices throughout the network each have information about how to reach each possible destination Ali Kujoory 6/30/2016 Not to be reproduced without permission 11 1.3.3 Packet Switching & Networking Technologies • Many designs for packet switching are possible • But there is a need for answers to basic questions: – How should a destination be identified? – How can a sender find the identification of a destination? – How large should a packet be? – How can a network recognize the end of one packet? – How can a network recognize the beginning of another packet? – If a network is shared, then how can they coordinate to insure that each receives a fair opportunity to send? – How can packet switching be adapted to wireless networks? – How can network technologies be designed to meet various requirements for speed, distance, & economic cost? • Many packet switching technologies have been created – to meet various requirements for speed, distance, & economic cost Ali Kujoory 6/30/2016 Not to be reproduced without permission 12 1.3.4 Internetworking with TCP/IP • In 1970s, another revolution in computer networks arose: Internet • In 1973, Vinton Cerf & Robert Kahn observed that – no single packet switching technology would ever satisfy all needs, e.g., • Build low-capacity technology for homes or high capacity technology for business • They suggested to stop trying to find a single best solution – Instead, explore interconnecting many packet switching technologies into a functioning whole – They proposed a set of standards be developed for such an interconnection – The resulting standards became known as the TCP/IP Internet Protocol Suite - TCP/IP • The success of TCP/IP lies in its tolerance of heterogeneity – TCP / IP allowed forming the Internet by connecting multiple packet switching networks which is more powerful than a single networking technology to meet various needs of the network providers Ali Kujoory 6/30/2016 Not to be reproduced without permission 13 1.4 Public & Private Parts of the Internet • The Internet consists of parts that are owned & operated by individuals or organizations • From ownership point of view, we can categorize networks – Public Networks – Private Networks • A public network is owned by a service provider – Offers service to subscribers – Any individual or corporation who pays the subscription fee can use – Public refers to the general availability of service, not to the data being transferred • A private network is controlled by one particular group – network use is restricted to one group – a private network can include circuits leased from a provider Ali Kujoory 6/30/2016 Not to be reproduced without permission 14 1.4.2 Private Network • Network vendors generally divide private networks into four categories based on the size: – – – – Consumer Small Office / Home Office (SOHO) Small-to-Medium Business (SMB) Large Enterprise • These categories are related to sales & marketing – The terminology is loosely defined – It is possible to give a qualitative description of each type • But one cannot find an exact definition Ali Kujoory 6/30/2016 Not to be reproduced without permission 15 1.5 Networks, Interoperability, & Standards • Communication always involves at least two entities – One that sends information & another that receives it • All entities in a network must agree on how information will be represented & communicated – Communication agreements involve many details • The way that electrical signals are used to represent data, • Procedures used to initiate & conduct communication, & • The format of messages • An important issue is interoperability – It refers to the ability of two entities to communicate • All communicating parties agree on details & follow the same set of rules, an exact set of specifications • Communication protocol, network protocol, or simply protocol to refer to a specification for network communication • A protocol specifies the details for one aspect of communication – Including actions to be taken when errors or unexpected situations arise Ali Kujoory 6/30/2016 Not to be reproduced without permission 16 1.6 Protocol Suites & Layering Models • A set of protocols must be constructed to ensure that the resulting communication system is complete & efficient • Each protocol should handle a part of communication not handled by other protocols • How can we guarantee that protocols work well together? – Instead of creating each protocol in isolation, protocols are designed in complete, cooperative sets called suites or families • Each protocol in a suite handles one aspect of networking – The protocols in a suite cover all aspects of communication – The entire suite is designed to allow the protocols to work together efficiently Ali Kujoory 6/30/2016 Not to be reproduced without permission 17 1.6 Protocol Suites & Layering Models • The fundamental abstraction used to collect protocols into a unified whole is known as a layering model • All aspects of a communication problem can be partitioned into pieces that work together – each piece is known as a layer • Dividing protocols into layers helps both protocol designers & implementers manage the complexity – to concentrate on one aspect of communication at a given time • Fig 1.1 illustrates the concept – by showing the layering model used with the Internet protocols • Later chapters will help us understand layering – by explaining protocols in detail • For now, it is sufficient to learn the purpose of each layer & how protocols are used for communication Ali Kujoory 6/30/2016 Not to be reproduced without permission 18 1.6 Protocol Suites & Layering Models Ali Kujoory 6/30/2016 Not to be reproduced without permission 19 1.6 Protocol Suites & Layering Models • Physical Layer (Layer 1) – specify details about the underlying transmission medium & hardware – all specifications related to electrical properties, radio frequencies, & signals belong in layer 1 • Network Interface Layer (Layer 2) – some publications use the term Data Link – specify details about communication between higher layers of protocols (implemented in software) & the underlying network (implemented in hardware) – specifications about • • • • Ali Kujoory network addresses maximum packet size that a network can support protocols used to access the underlying medium & hardware addressing 6/30/2016 Not to be reproduced without permission 20 1.6 Protocol Suites & Layering Models • Internet Layer (Layer 3) – Protocols in the Internet layer form the fundamental basis for the Internet – Layer 3 protocols specify communication across the Internet (spanning multiple interconnected networks) • Transport Layer (Layer 4) – Provide for communication from an application program on one computer to an application program on another – Includes specifications on • controlling the maximum rate a receiver can accept data • mechanisms to avoid network congestion • techniques to insure that all data is received in the correct order Ali Kujoory 6/30/2016 Not to be reproduced without permission 21 1.6 Protocol Suites & Layering Models • Application Layer (Layer 5) – specify how a pair of applications interact when they communicate – specify details about • the format & • the meaning of messages that applications can exchange • the procedures to be followed – Some examples of network applications in layer 5 • • • • • email exchange file transfer web browsing telephone services video teleconferencing • Internet Engineering Task Force (IETF, ietf.org) specifies – Request For Comments (RFCs), i.e. (standards) for the protocols in the TCP/IP suites Ali Kujoory 6/30/2016 Not to be reproduced without permission 22 1.7 How Data Passes Through Layers • Protocol implementations follow the layering model – by passing the output from a protocol in one layer to the input of a protocol in the next • To achieve efficiency rather than copy an entire packet – a pair of protocols in adjacent layers pass a pointer to the packet • Fig 1.2 illustrates layered protocols on the two computers – Each computer contains a set of layered protocols – When an application sends data • it is placed in a packet & the packet passes down through each layer of protocols – Once it has passed through all layers of protocols on the sending computer • the packet leaves the computer & is transmitted across the physical network – When it reaches the receiving computer • the packet passes up through the layers of protocols – If the application on the receiver sends a response, the process is reversed Ali Kujoory 6/30/2016 Not to be reproduced without permission 23 1.7 How Data Passes Through Layers Ali Kujoory 6/30/2016 Not to be reproduced without permission 24 1.8 Headers & Layers • Each layer of protocol software performs computations – that insure the messages arrive as expected • To perform such computation, protocol software on the two machines must exchange information – each layer on the sender prepends extra information onto the packet – the corresponding protocol layer on the receiver removes & uses the extra information • Additional information added by a protocol is known as a header • Headers are added by protocol software on the sending computer – That is, the Transport layer prepends a header, & then the Internet layer prepends a header, & so on • If we observe a packet traversing the network, the headers will appear in the order that Fig 1.3 illustrates • Although the figure shows headers as the same size – in practice headers are not of uniform size & – a physical layer header is optional Ali Kujoory 6/30/2016 Not to be reproduced without permission 25 1.8 Headers & Layers Ali Kujoory 6/30/2016 Not to be reproduced without permission 26 Overview of TCP/IP Exchanges App+Data TCP Send primitive Deliver primitive NL DL DT Phy Ali Kujoory 6/30/2016 Not to be reproduced without permission 27 1.9 ISO & the OSI Seven-Layer Reference Model • At the same time the Internet protocols were being developed – Two large standards bodies jointly formed an alternative reference model – They also created a set of internetworking protocols • These organizations are: – International Standardization Organization (ISO) – International Telecommunications Union-Telecommunication (ITUT) • ITU was known as the Consultative Committee for International Telephone & Telegraph (CCITT) • ISO layering model is known as the Open Systems Interconnection (OSI) Seven-Layer Reference Model • Fig 1.4 illustrates the seven layers in the model Ali Kujoory 6/30/2016 Not to be reproduced without permission 28 1.9 ISO & the OSI Seven-Layer Reference Model Ali Kujoory 6/30/2016 Not to be reproduced without permission 29 A comparison of OSI & TCP/IP Stacks Ali Kujoory Layer OSI TCP/IP 7 Application Application 6 Presentation 5 Session 4 Transport Transport 3 Network Network 2 Data Link 1 Physical 6/30/2016 Presentation & Session not present in TCP/IP model Host-to-Network Not to be reproduced without permission 30 1.10 The Inside Scoop • ISO & the ITU use a process that accommodates as many viewpoints as possible when creating a standard – As a result, some standards can appear to have been designed by a committee making political compromises rather than by engineers & scientists • The seven-layer reference model is controversial – It did indeed start as a political compromise • the model & the OSI protocols were designed as competitors for the Internet protocols • ISO & the ITU are huge standards bodies that handle the world-wide telephone system & other global standards • The Internet protocols & reference model were created by a small group of about a dozen researchers – It is easy to see why the standards organizations might be confident that they could dictate a set of protocols & everyone would switch away from protocols designed by researchers – At one point, even the U.S. government was convinced that TCP/IP should be replaced by OSI protocols Ali Kujoory 6/30/2016 Not to be reproduced without permission 31 1.10 The Inside Scoop • Eventually, it became clear that TCP/IP technology was technically superior to OSI & – efforts to develop & deploy OSI protocols were terminated • Standards bodies were left with the seven-layer model • Advocates for the seven-layer model have tried to stretch the definitions to match TCP/IP • They argue that layer three could be considered an Internet layer & that a few support protocols might be placed into layers five & six • Perhaps the most humorous part of the story is that many engineers still refer to applications as layer 7 protocols – even when they know that layers five & six are unfilled & unnecessary Ali Kujoory 6/30/2016 Not to be reproduced without permission 32 1.11 Remainder of the Text • The book text is divided into five major parts • PART I Introduction & Internet Applications – Introduces network applications & network programming • PART II Data Communication Basics – describes data communications & the transmission of information – explains how electrical & electromagnetic energy can be used to carry information across wires or through the air – shows how data is transmitted Ali Kujoory 6/30/2016 Not to be reproduced without permission 33 1.11 Remainder of the Text • PART III Packet Switching & Network Technologies – focuses on packet switching & packet technologies – explains why computer networks use packets – describes the general format of packets – examines how packets are encoded for transmission – shows how each packet is forwarded across a network to its destination – introduces basic categories of computer networks, such as • Local Area Networks (LANs) • Wide Area Networks (WANs) – characterizes the properties of each category – discusses some example technologies Ali Kujoory 6/30/2016 Not to be reproduced without permission 34 1.11 Remainder of the Text • PART IV Internetworking – covers internetworking & the associated TCP/IP Suite – explains the structure of the Internet & the TCP/IP protocols – explains the IP addressing scheme – describes the mapping between Internet addresses & underlying hardware addresses – discusses Internet routing & routing protocols Ali Kujoory 6/30/2016 – describes several fundamental concepts, such as • • • • • • • • • encapsulation fragmentation congestion flow control virtual connections address translation bootstrapping IPv6 various support protocols Not to be reproduced without permission 35 1.11 Remainder of the Text • PART V Other Networking Concepts & Technologies – covers a variety of remaining topics that pertain to the network as a whole instead of individual parts – discusses issues related to network performance – covers emerging technologies – discusses major issues in network security – introduces the need for network management & its concepts Ali Kujoory 6/30/2016 Not to be reproduced without permission 36