* Your assessment is very important for improving the workof artificial intelligence, which forms the content of this project
Download Introduction to Computer Networks
Computer security wikipedia , lookup
Distributed firewall wikipedia , lookup
Multiprotocol Label Switching wikipedia , lookup
Zero-configuration networking wikipedia , lookup
Asynchronous Transfer Mode wikipedia , lookup
Network tap wikipedia , lookup
Airborne Networking wikipedia , lookup
Wake-on-LAN wikipedia , lookup
Computer network wikipedia , lookup
Piggybacking (Internet access) wikipedia , lookup
Cracking of wireless networks wikipedia , lookup
List of wireless community networks by region wikipedia , lookup
Deep packet inspection wikipedia , lookup
Internet protocol suite wikipedia , lookup
Recursive InterNetwork Architecture (RINA) wikipedia , lookup
Introduction to Computer Networks Slides For Week 1 Course Goals Understand the basic principles of computer networks Understand the Internet and its protocols Understand the key design principles used to build the Internet Experience building network systems Course is not about specific skills E.g. configure a router from company X vs. learn principles of how all routers work Success means you are confident to tackle a range of network programming, design and maintenance. 2 Introduction to Computer Networks Networks Fundamentals Why Study Networks? Integral part of society Work, entertainment, community Pervasive Home, car, office, school, mall … Huge impact on people and society Person-to-person and group communication Form and strengthen communities 4 email, blogs, chat chat rooms, newsgroups ... Commerce, services, entertainment, socializing Introduction to Computer Networks Concepts for this week What is the Internet? What is a network? Core and Edge of the Internet Circuit, message and packet switching Layering and encapsulation Network delay analysis 5 Introduction to Computer Networks What is the Internet? What is a network? Lets start at the beginning… What is a network for? To allow two or more endpoints to communicate Is Cable T.V. a network? – yes. What is a computer network? Nodes connected by links Nodes are computers: Is this a Network? 7 Processing ability Receive and transmit information (unlike televisions). Yes, not an interesting one.. Introduction to Computer Networks Other Networks (network topologies) Ring Hierarchical 8 Star (Hub and Spoke) Broadcast Introduction to Computer Networks Data Networks Data networks are Packet Switching Networks Data is carried in packets and is switched between routers Every packet carries its destination address and is routed according to current network conditions. There is no fixed route between every pair of end points. Telephone networks are Circuit Switched Networks 9 Voice is carried over a predetermined circuit between two phones. The route is established before any of the data is sent, and then the data is sent (like a phone call – you first call, have a connection, and then talk). Data is also carried (e.g., fax). But it is not a data network! Introduction to Computer Networks Data Types Non-Isochronous Isochronous Examples: mail, web files, P2P traffic, etc. Examples: voice, live broadcast Arrival rate is undetermined, bursty. Jitter (variation of delay between subsequent packets) is unknown, and not important. Arrival rate is predetermined and jitter should be fixed. E.g., packet every 0.25 msec. Delay is possible. For example, your email cab be delayed by a few seconds. Delay is critical and bounded. Maximal possible delay is ~ 30-70 msecs. Packet loss can be taken care of by the network, and missing packets can be retransmitted, so that the receiving side receives the complete data sent. Packets lost cannot be resent due to the maximal delay limitation. Ideal for packet switching 10 Ideal for circuit switching Introduction to Computer Networks The Internet Built initially for non-isochronous data Hence, a packet switching architecture. Today we see that the world moves towards integration of networks: carry data, voice, TV over the Internet. Termed: everything over IP Why not use circuit switching (telephone network)? (We will see later what that means) There was a big debate, of course, but telephone networks are less efficient for routing bursty data (Internet data). In this course we study a packet switching network: The Internet. 11 Introduction to Computer Networks What is Internet Technology? What is an internet? What is the Internet? Network of networks A global internet based on the IP protocol To what does “Internet technology” refer? Architecture Protocols 12 Services We will learn the protocols which enable the services, and understand the architecture it is built over. Introduction to Computer Networks Architecture-wise Company A Internet Service Provider 1 ISP 2 Company B Host: Machine running user application 13 Media: Physical process used (copper wire, fiber optics, satellite link) Introduction to Computer Networks Architecture-wise Company A Internet Service Provider 1 (ISP 1) ISP 2 Company B 14 Router: decide where to send data next Network : Collection of interconnected machines Introduction to Computer Networks or interconnected LANs (subnetworks) Architecture-wise Company A Internet Service Provider 1 (ISP 1) ISP 2 Company B 15 Core Networks (ISP tiers) Edge Networks: •Tier 1: Biggest ISPs Companies, •Tier 2 and 3: Regional and with a “default route” Introductionorganizations to Computer Networks very small. Networks Today Default Route Networks: Campus, Company Local Area Networks (LANs) for labs, or certain floors Virtual LANs Edge Networks: Small Internet Service Providers Core Networks: Metropolitan Wide Area Network The Internet: Core + Edge Networks 16 Introduction to Computer Networks Networks Legendary Scaling Inter-processor Distance Processors Located In Same 1m Square meter 10m Room 100m Building 1km Campus 10 km Personal Area Network City Local Area Network Metropolitan Area Network 100 km Country 1000km Continent 10000 km 17 Planet Introduction to Computer Networks Wide Area Network The Internet Local Area Network (LAN) Limited Size Run at speeds of 10Mbs, 100 Mbs, 1Gbps, 10 Gbps Legend topology: Ethernet (broadcast) Example: PC farm with servers and printers. Today: Switched computers and nodes. 18 Introduction to Computer Networks Service-wise (applications) Electronic mail Remote terminal File transfer Newsgroups File sharing Resource distribution World Wide Web Video conferencing Games 19 Introduction to Computer Networks Enabling A Service The user, at home, is requesting page www.mta.ac.il The network (Internet) should figure: 1. Which server is www.mta.ac.il? (all computers use numbers. Most 2. Which Route to use for user’s request? What format to use for sender request and receiver’s reply? (maybe data should be encrypted) What to do if the message gets corrupted along the way? What to do if a routing computer fails along the way? Maybe the server restricts access to this page, is this user ok? What if the page content was moved to another server, or was deleted? What if user logged off or pressed “refresh” before transmission was completed? …. 3. 4. 5. 6. 7. 8. 20 people seem to prefer names). Introduction to Computer Networks Protocols The Internet uses the TCP/IP protocol suite Architecture Service Rules of communication Divided to layers FTP HTTP RTP TFTP UDP TCP IP Ethernet CAT-5 21 802.11 Single-Mode Fiber … PPP RS-232 Introduction to Computer Networks Layering An important and basic principle in computer networks Divide the work hierarchically: each layer is a separate entity that maintains its part. Host Application The application layer receives or transmits the data to/from the application Transport The Transport layer is responsible to packetize the data and transmit it without errors to the end host Network The Network layer is responsible to choose the next hop (a neighbor network node) and route the packets to it Host-to-Net * (Link layer) The Host-to-net layer is responsible to send the data over the attached physical link in its format and * host-to-net layer is also called the link layer 22 Introduction to Computer Networks TCP/IP Layering Architecture Host B Host A Application Protocol end-to-end communication Application Layer Transport Protocol (TCP) end-to-end communication Transport Layer IP 23 Application Layer IP Transport Layer IP Network Layer Network Layer Network Layer Network Layer Link Layer Link Layer Link Layer Link Layer Introduction to Computer Networks Layering and Encapsulation Use layers to hide complexity, each layer implements a service: Layer N uses service provided by layer N-1 layer N-1 provides a service to layer N This is done using encapsulation: Treat the neighbouring layer’s information as a “black box”, can’t look inside or break message Sending: add information needed by the current layer “around” the higher layers’ data 24 headers in front trailers in back Receiving: Strip off headers and trailers before handing up the stack Introduction to Computer Networks Layering (cont.) At the sending host data data Transport layer header data Transport Network layer header layer header data Transport Network layer header layer header A Packet Host-to-net layer header A Frame Host sends the frame on the attached link 26 Introduction to Computer Networks Layers (cont.) At the receiving host The frame arrives on the attached link data data Transport layer header data Transport Network layer header layer header data Transport Network layer header layer header Host-to-net layer header Data is delivered to the application at the receiving host 27 Introduction to Computer Networks ISO OSI Layering Architecture – The reference model Host A Application Layer Presentation Layer Session Layer Transport Layer 28 Host B Application Protocol Presentation Protocol Session Protocol Transport Protocol Application Layer Presentation Layer Session Layer Transport Layer Network Layer Network Layer Network Layer Network Layer Data Link Layer Data Link Layer Data Link Layer Data Link Layer Physical Layer Physical Layer Physical Layer Physical Layer Introduction to Computer Networks Router Router ISO’s Design Principles A layer should be created where a different level of abstraction is needed Each layer should perform a well-defined function The layer boundaries should be chosen to minimize information flow across the interfaces The number of layers should be large enough that distinct functions need not be thrown together in the same layer out of necessity, and small enough that the architecture does not become unwieldy 29 Introduction to Computer Networks Who is who? ISO - International Organization for Standardization ISO 9000, etc. IETF – The Internet Engineering Task Force: Near term, standardized oriented group, divided into disciplines such as: applications, routing, addressing, etc. IRTF – The Internet Research Task Force: Pursue long term research projects RFCs: Requests For Comment 30 Some become official standards http://www.rfc-editor.org Look for “aviation over IP” (aka birds)… Introduction to Computer Networks Host-to-net Layer Receives a data packet from the network layer Creates a frame of bits Signal the start and end of a frame (usually by a string of known bits) Add error correcting codes to enable transmission even on noisy channels Collision detection and retransmissions What is the time it takes to transmit and receive a frame on a link? 31 Introduction to Computer Networks Link Delay Two factors Propagation delay = Distance / Speed of light Time for bits to “move across wires” Transmission delay = Packet size / Bandwidth Time to “get bits on wires” 32 Introduction to Computer Networks Transmission vs. Prop. delay A single transmission link as a water pipe The thicker the pipe, the more water it can carry from one end to the other in each unit time Water is carried from one end of the pipe to the other at constant speed, no matter how thick the pipe is Water = Data bits Thickness of the pipe = Channel capacity (bandwidth) Speed of water through the pipe = Propagation speed (light speed) 33 Introduction to Computer Networks Transmission vs. Prop. Delay (cont) pipe 1. 2. 34 Propagation delay is how long takes to cross the pipe, irrespective of volume Transmission (bandwidth delay) is related to how much water can be pushed in through the opening per unit time Introduction to Computer Networks Transmission Time How long does it take A to transmit an entire packet on the link? Relevant information: packet length = 1500 bytes channel capacity = 100 Mbps Another way to ask this question: If the link can transmit 100 million bits in a second, how many seconds does it take to transmit 1500 bytes (8x1500 bits)? 100 Mbits 1 sec 35 = 1500 x 8 bits t Solving for t… t = 0.00012 sec (or 120 sec) Introduction to Computer Networks Propagation Delay How long does it take a single bit to travel on the link from A to B? Relevant information: link distance = 500 m prop. delay factor = 5 sec/km Another way to ask this question: If it takes a signal 5 sec to travel 1 kilometer, then how long does it take a signal to travel 500 meters? 5 sec 1000 m 36 = t 500 m Solving for t… t = 2.5 sec Introduction to Computer Networks Units Bits are the units used to describe an amount of data in a network 1 millisecond (msec) 1 microsecond (sec) 1 nanosecond (nsec) = 1 x 10-3 seconds = 0.001 seconds = 1 x 10-6 seconds = 0.000001 seconds = 1 x 10-9 seconds = 0.000000001 seconds Bits per second are the units used to measure channel capacity/bandwidth and throughput ~1 x 103 bits = 1,000 bits ~1 x 106 bits = 1,000,000 bits ~1 x 109 bits = 1,000,000,000 bits Seconds are the units used to measure time 1 kilobit (Kbit) 1 megabit (Mbit) 1 gigabit (Gbit) bit per second (bps) kilobits per second (Kbps) megabits per second (Mbps) Bytes are units that describe a series of eight bits 37 1 Byte = 8 bits Bytes per second (Bps) Introduction to Computer Networks Processing Delay Stylized format required to send data Analogy: adding and removing envelopes to letters How long does it take to execute all these layers? Why is this time important? Host 38 Host Application Layer Application Layer Transport Layer Transport Layer Router Network Layer Network Layer Network Layer Host-toNet Layer Host-toNet Layer Host-toNet Layer Introduction to Computer Networks Example A B 500 m Protocol Processing Time = 40 sec packet length = 1500 bytes channel capacity = 100 Mbps propagation delay factor = 5 sec/km 1. 2. 3. 39 How long to format the data? How long does it take a single bit to travel on the link from A to B? How long does it take A to transmit an entire packet onto the link? Introduction to Computer Networks Timeline Method Host A Host B Protocol Delay 40 1st bit 2.5 Propagation delay 120 Transmission time Time last bit 40 Protocol Delay Total time: 40+120+2.5+40 = 202.5 sec 40 Introduction to Computer Networks