* Your assessment is very important for improving the workof artificial intelligence, which forms the content of this project
Download Lecture 1 - Lane Department of Computer Science and Electrical
Wireless security wikipedia , lookup
Asynchronous Transfer Mode wikipedia , lookup
Distributed firewall wikipedia , lookup
Zero-configuration networking wikipedia , lookup
Wake-on-LAN wikipedia , lookup
Computer network wikipedia , lookup
Network tap wikipedia , lookup
Piggybacking (Internet access) wikipedia , lookup
Airborne Networking wikipedia , lookup
Deep packet inspection wikipedia , lookup
Cracking of wireless networks wikipedia , lookup
List of wireless community networks by region wikipedia , lookup
Packet switching wikipedia , lookup
Internet protocol suite wikipedia , lookup
UniPro protocol stack wikipedia , lookup
Recursive InterNetwork Architecture (RINA) wikipedia , lookup
CS 453 Computer Networks Lecture 1 Computer Networking From a social, economic and technical perspective, computer networks have grown from a high technical, exclusive and expensive resource that served a few very specialized facilities to a common place (some places) commodity utility that is “touched” by almost everyone on a daily basis. in about 40 years Computer Networks ..play a central role in our daily lives Imagine being without our networks Few businesses without access to the Internet, and for some, without local network access within their offices, factories and facilities …have become economic engines of sorts determining where companies locate and what they do Computer Networks Access to information resources – sometimes remote – but we don’t care. Demand for better networks is dramatically increasingTelecommunications companies are racing to get better computer networking capabilities to home, businesses and communities Has become the political center of attention – with government agencies pushing initiatives to get greater network connectivity to the communities and constituencies Computer Networking …give us a growing range of services Email and text messaging World Wide Web access to a vast reservoir of information and knowledge Voice communications in the form of VoIP Video conferencing Access to music and videos/movies … Imagine… You have two computers And you need them to talk to each other One here and one here What will you have to do? …so what if you need to network 3 computers What new problems do we have? … what about 5 computers How do we connect them How do we get messages from computer x to computer y …for 5 computers We need more connection channels (wires). How many? The computers need more interfaces. How many? How about bigger networks What about 6 computers How many wires? How many interfaces per machine? What about 30 computers or 100 computers? This problem quickly gets out of hand. We have to have a better way …there are solutions… Ring Bus …and others Classes of Networks Computer networks are often thought of in terms of broad class or categories The distinguishing feature is usually proximity or, conversely, distance… But really is more about the technology used to implement it The categories have very blurry boundaries Network Classification by proximity –based on Tanenbaum (2003) pg. 16 Interprocessor distance Processors located in same Network Class 1m Square meter 10 m Room 100 m Building 1 km Campus 10 km City Metropolitan area network 100 km Country Wide area network 1000 km Continent 10,000 km Planet Personal area network Local area network The Internet Classes of Networks Personal Area Network – in the immediate vicinity of the person or machine – wearable computers, bluetooth Local Area Networks – limited distance, usually within a building, maybe a few buildings, perhaps a campus Wide Area Network – interconnect machines in different cities, states, across the country, intercontinental Internet – technically the Internet is a network of networks Metropolitan Area Network From Tanenbaum (2003) pg. 18 Wide Area Networks How do we transmit data on a network Data transmitted on a network may be transmitted as a flow of discrete bits – bit stream …or may be grouped and transmitted as chunks call packets This is generally true for all networks but this raises some interesting issues in Wide Area Networks Wide Area Networks It is common in Wide Area Networks to multiple paths from the source of the data transmission to the destination From Tanenbaum (2003) pg.20 Wide Area Networks In order to send across a network from the source to the destination… We must establish a path across the network from a number of possible paths We can – Fix a path for the duration of the transmission Circuit switching Common for bit streams, telephone traffic Set the path dynamically on a packet by packet basis Packet switching Wide Area Networks Packet switched networks Data transmitted in packets The best route for the packets decided per packet by the network (routers) based on link failures, congestion, bandwidth… Packet switched networks can be very efficient Packets from a dataset can travel different paths at the same time Packets do not have to flow through the network in order, if the network can sequence them before delivery Packet switched networks are sometimes called “store and forward” networks. A little History Computer networking had some origins in the 1950s Mostly phone circuits to connect remote IO devices (card readers, line printers) to mainframe computers It was the Cold War and the military used the national phone network The phone network was built central switches (i.e. many single points of failure The Defense Department wants a communications system that was not vulnerable to nuclear attack. A Little History Rand Corp (Baran) came up with a fault tolerant network design A Little History The Defense Department asked AT&T to build the Rand design AT&T refused So that was the end of that, right? A Little History In 1968 ARPA asked BBN to build an prototype network based on the RAND design… … interconnecting a small number of dedicated communications minicomputers …at 56Kbps …which at the time very fast …but how could computers be connected with such a network? A Little History In 1969 ARPA invited researchers (mostly graduate students) to a conference ARPA presented their idea of a computer network based on the packet switching model The grad students took on the task… … and in December 1969 ARPANET was born The Birth and Growth of ARPANET From Tanenbaum (2003) pg. 53 A Little History ARPANET was DoD sponsored but most participants were universities Participating universities were able to collaborate on research and share data unlike before The National Science Foundation noticed … and built NSFNET … the successor to ARPANET A Little History NSFNET primarily interconnected NSF sponsored Supercomputing Centers (i.e. Pittsburgh, Illinois, San Diego NSFNet started at 448Kbps then,1.5 Mbps Upgraded to 45 Mbps Followed by VBNS …Internet2/Abilene – 1Gbps …Internet2/Newnet – 10 Gbps …NLR – multiple 10 Gbps The Internet …a network of networks Conceptual Schematic of the Internet From Tanenbaum (2003) pg. 58 Unicasting Multicasting Local Area Network on Wide Area Infrastructure Comment about the subnet From Tanenbaum 2003 Network Software How would you write software to implement a computer network Consider our two machine scenario …and simple hardware interface like a com port Implement SLIP Suppose you have to implement this in your application program… Network Software What are the implications of this? What if you had to develop another network application? Could you reuse your software interface? What if your original application stayed the same, but your hardware interface changes – say from a serial com port to a USB port? Or SuperDuperNet? Network Software Solution – modularize your software ..or more specifically create software layers Layers should isolate functionality in conceptually and developmentally significant ways Separate out what each layer needs to do and know and only share what the neighbor layers need to know, to do what they have to do Network Software Layers functions at virtual channels Virtually connect to the network partner Layers sometime call a stack, why? Modules or layers must define Services – what can each layer do Interface – the mechanism to evoke the services of a layer from an adjacent layer Protocol – the rules or policies for how layers interact with each other Network Software Consider a simple three layer stack Hardware layer Driver layer Applications layer What does each layer expose, to what? Network Software Network Architecture Layer requirements Services – what does the network layer implementation do Layer functionality Services like “send data” “receive data” Interfaces – how does one layer evoke the services of another layer Think API, function calls, etc Protocols – the set of rules and policies that make layers and devices work well together ... Data must be in packets of 128 bytes with an eight byte address… Network Architecture Logically layers communicate with their corresponding layers in another host In reality layers talk to neighboring layers and only really pass messages in the physical layer For example, A program on host A wants to send data to a program on host B It seems that the application programs communication with each other Or it looks like the driver layers talk to each other But, really… Network Architecture … The program on host A sends the message to the application layer on host A… The application layer on host A sends the message to the driver layer on host A… The driver layer on host A sends the message to the physical layer on host A The physical layer on host A send the data to the physical layer on host B… The physical layer on host B sends the data to the driver layer on host B… The driver layer on host B sends the data to the applications layer on host B… The applications layer on host B sends the data to the program on host B… The program on host B processes the data in the message Network Message Flow Host A Host B Program Program Application Layer Application Layer Driver Layer Driver Layer Physical Layer Physical Layer Network Architecture Concepts So how does make sure that different hosts can “understand” each other Protocols Reference Models Standards Network Architecture Concepts Reference model – a high level abstraction of computing system …serves as a framework for the development of more specific models and specifications Provides a framework to get everyone on the “same page” Von Neumann architecture is a reference model for conventional digital computers OSI Reference Model OSI or Open Systems Interconnection Reference Model Developed by the International Standards Organization (ISO) Defines seven layers See http://en.wikipedia.org/wiki/OSI_Model OSI Reference Model From Tanenbaum, 2003 OSI Reference Model Layer 1 – Physical layer Lowest layer – concern with the transmission data in its raw form This is physical media layer Twisted pair copper Fiber optics Wireless Include interfaces devices – ethernet adapters, HCA/HBA, hubs and switches OSI Reference Model Layer 2 – Data-Link layer Concerned with flowing data across a network link Packages data into frames/extracts data from frames Sublayers manage media access control (i.e. ethernet) OSI Reference Model Layer 3 – Network Layer Concerned with the network aspect of data delivery Switching, routing Creating addressed packets IP addresses added here Network routing controlled in this layer IP lives in this layer OSI Reference Model Layer 4 – Transport Layer Concerned with shipping and receiving complete messages Deals with out of order packets, lost packets, etc. TCP and UDP live in this layer OSI Reference Layer Layer 5 – Session Layer Responsible for managing network sessions … between senders and receivers OSI Reference Model Layer 6 – Presentation Layer Converts message from the way the network wants them to the way the application wants them Repackages a network message into an application record Repackages an application record into a network message OSI Reference Model Layer 7 – Application Layer Delivers messages to application/takes messages from applications Can be an application… Or can service an application SMTP, DNS, FTP and HTTP are Layer 7 protocols TCP Reference Model From Tanenbaum, 2003 TCP Reference Model Much more to come OSI and TCP/IP Reference Models …so where are they today Networking Standards So why can all of these devices from different vendors in different countries interoperate? Standards Lack of standards – a big problem – most of the time – consider wireless networking Standards can be – Per company Per country International More concrete, specific than reference models Networking Standards Usually, starts with an identified problem domain The a proposed or draft standard A review and comment process Adoption of the standards Standards Organizations Telecommunications ITU-T (previously known as CCITT) About 200 government members About 500 industry members Networking (International Standards ISO (International Standards Organization) Members are national standards body US = ANSI, GB=BSI, France=AFNOR, Germany=DIN 89 or so countries Standards Organizations NIST (National Institute of Standards and Technology) U.S. Dept. of Commerce Primarily concerned with government standards, except DoD IEEE IEEE Standards From Tanenbaum, 2003 Internet Standards The Internet Society (ISOC) The Internet Architecture Board (IAB) The Internet Engineering Task Force (IETF) The Internet Research Task Force (IRTF) ICANN Internet Corporation for Assigned Names and Numbers