* Your assessment is very important for improving the workof artificial intelligence, which forms the content of this project
Download csci5211: Computer Networks and Data Communications
Wireless security wikipedia , lookup
Multiprotocol Label Switching wikipedia , lookup
Net neutrality law wikipedia , lookup
IEEE 802.1aq wikipedia , lookup
Asynchronous Transfer Mode wikipedia , lookup
Distributed firewall wikipedia , lookup
Zero-configuration networking wikipedia , lookup
Internet protocol suite wikipedia , lookup
Wake-on-LAN wikipedia , lookup
Deep packet inspection wikipedia , lookup
Computer network wikipedia , lookup
Network tap wikipedia , lookup
Piggybacking (Internet access) wikipedia , lookup
Recursive InterNetwork Architecture (RINA) wikipedia , lookup
Cracking of wireless networks wikipedia , lookup
UniPro protocol stack wikipedia , lookup
Peer-to-peer wikipedia , lookup
Packet switching wikipedia , lookup
What’s a Network: Key Features Providing certain services Shared resources used by many users, often concurrently Basic building blocks transport goods, mail, information or data nodes (active entities): process and transferdata links (passive medium): passive “carrier” of data Typically “multi- hop” two “end points” cannot directly reach each other need other nodes/entities to relay winter 2008 Introduction 1 What’s a Network: “Nuts and Bolts” View “HW/SW that makes the internet” • • • network edge: millions of end-system devices (hosts): – pc’s workstations, servers – PDA’s (personal digital system), mobile computers, toasters, cell-phone running network apps network core: routers, switches forwarding data – packets: packet switching – calls: circuit switching communication links – fiber, copper, radio, … Different links transmit data with different transmission speed measured in bit/sec router server winter 2008 Introduction mobile local net regional net Nodes are connected indirectly through switching devises (most popular are routers and /or link layer switches) Each packet has a route or path from source to destination Each sys access the internet through internet service provider (ISP) such as local telephone company, etc.. workstation company net 2 A Taxonomy of Communication Networks • Communication networks can be classified based on the way in which the nodes exchange information: Communication Network Broadcast Communication Network (bus) Switched Communication Network Packet-Switched Communication Network Circuit-Switched Communication Network establishes a fixed bandwidth circuit (or channel) between nodes and terminals before the users may communicate, as if the nodes were physically connected with an electrical circuit winter 2008 is a communications method in which packets (discrete blocks of data) are routed between nodes over data links shared with other traffic. In each network node, packets are queued or buffered, resulting in variable delay Datagram Network Virtual Circuit Network Each packet sent independently of the others, No call setup, More reliable (can route around failed nodes or congestion) Introduction Fixed route established before any packets sent, No need for routing decision for each packet at each node 3 Broadcast vs. Switched Communication Networks • Broadcast communication networks – Information transmitted by any node is received by every other node in the network • E.g., LANs (Ethernet, Wavelan) – Problem: coordinate the access of all nodes to the shared communication medium (Multiple Access Problem) • Switched communication networks – Information is transmitted to a sub-set of designated nodes • E.g., WANs (Telephony Network, Internet) – Problem: how to forward information to intended node(s) • Done by special nodes (e.g., routers, switches) running routing protocols winter 2008 Introduction 4 Data/Computer Networks Delivery of information (“data”) among computers of all kinds General-Purpose servers, desktops, laptop, PDAs, cell phones, ...... Not for specific types of data or groups of nodes, or using specific technologies Utilizing a variety of technologies “physical/link layer” technologies for connecting nodes copper wires, optical links, wireless radio, satellite or even “non-electronic” means: e.g., cars, postal services, humans -- e.g., recent “delay-tolerant networks” efforts for 3rd world countries winter 2008 Introduction 5 Circuit Switching End-end resources reserved for “call” • link bandwidth, switch capacity • dedicated resources: no sharing • circuit-like (guaranteed) performance • call setup required winter 2008 Introduction 6 Packet Switching each end-end data stream divided into packets • user A, B packets share network resources • each packet uses full link bandwidth • resources used as needed, Bandwidth division into “pieces” Dedicated allocation Resource reservation winter 2008 resource contention: • aggregate resource demand can exceed amount available • congestion: packets queue, wait for link use • store and forward: packets move one hop at a time – transmit over link – wait turn at next link Introduction 7 Packet Switching vs Circuit Switching: Why? • “reliability” – no congestion, in order data in circuit-switching • packet switching: better sharing of bandwidth • state, resources: packet switching has less state – advantage less control-plane processing resources along the way – More dataplane (address lookup) processing • failure modes (routers/links down): – packet switching routing reconfigures sub-second timescale; – circuit-switching: more complex recovery – need to involve all (downstream) switches on path winter 2008 Introduction 8 Fundamental Issues in Networking Networking is more than connecting nodes! • Naming/Addressing – How to find name/address of the party (or parties) you would like to communicate with – Address: bit- or byte-string that identifies a node – Types of addresses • Unicast: node-specific • Broadcast: all nodes in the network • Multicast: some subset of nodes in the network • Routing/Forwarding: – process of determining how to send packets towards the destination based on its address – Finding out neighbors, building routing tables winter 2008 Introduction 9 Other Key Issues in Networking • Detecting whether there is an error! • Fixing the error if possible • Deciding how fast to send, meeting user demands, and managing network resources efficiently • Make sure integrity and authenticity of messages, • …… winter 2008 Introduction 10 Fundamental Problems in Networking … What can go wrong? • Bit-level errors: due to electrical interferences • Packet-level errors: packet loss due to buffer overflow/congestion • Out of order delivery: packets may takes different paths • Link/node failures: cable is cut or system crash • Others: e.g., malicious attacks winter 2008 Introduction 11 Fundamental Problems in Networking What can be done? • Add redundancy to detect and correct erroneous packets • Acknowledge received packets and retransmit lost packets • Assign sequence numbers and reorder packets at the receiver • Sense link/node failures and route around failed links/nodes Goal: to fill the gap between what applications expect and what underlying technology provides Key Challenges in Internet: large, complex, decentralized, ever-evolving, distributed network of networks! winter 2008 Introduction 12 Key Performance Metrics • Bandwidth (throughput) – data transmitted per time unit – link versus end-to-end( provide connection directly from an application on one computer to an application on the remote computer) • Latency (delay) – time to send message from point A to point B – one-way versus round-trip time (RTT) – components Latency = Propagation + Transmit + Queue Propagation = Distance / c Transmit = Size / Bandwidth Delay Bandwidth Product: # of bits that can be carried in transit • Reliability, availability, … • Efficiency/overhead of implementation, …… winter 2008 Introduction 13 Network Architecture and Structure • Network components: (edge/core) nodes and links How do we talk about “structure” of network and its architecture? • layered architecture – structure allows identification, relationship of complex system’s pieces: layered reference model for discussion – layer N builds on services provided by layer N-1 – Layer N provides service to layer N+1 • Notions of protocol, service and peer interfaces • physical topology, interconnection winter 2008 Introduction 14 What’s a Protocol? human protocols: • “what’s the time?” • “I have a question” • introductions … specific msgs sent … specific actions taken when msgs received, or other events winter 2008 network protocols: • machines rather than humans • all communication activity in Internet governed by protocols protocols define format, order of msgs sent and received among network entities, and actions taken on msg transmission, receipt Introduction 15 What’s a Protocol? a human protocol and a computer network protocol: Hi TCP connection req. Hi TCP connection reply. Got the time? Get http://gaia.cs.umass.edu/index.htm 2:00 <file> time winter 2008 Introduction 16 Protocols and Interfaces • Protocols: specification/implementation of a “service” or “functionality” • Each protocol object has two different interfaces – service interface: operations on this protocol – peer-to-peer interface: messages exchanged with peer Host 1 High-level object Protocol winter 2008 Host 2 Service interf ace Peer-to-peer interf ace Introduction High-level object Protocol 17 Internet Protocol Stack • application: supporting network applications – ftp, smtp, http • transport: host-host data transfer – tcp, udp • network: routing of datagrams from source to destination – ip, routing protocols • link: data transfer between neighboring network elements – ppp, ethernet application transport network link physical • physical: bits “on the wire” winter 2008 Introduction 18 Layering: Logical Communication E.g.: transport • take data from app • add addressing, reliability check info to form “datagram” • send datagram to peer • wait for peer to ack receipt • analogy: post office winter 2008 data application transport transport network link physical application transport network link physical Introduction ack data network link physical application transport network link physical data application transport transport network link physical 19 Layering: Physical Communication data application transport network link physical application transport network link physical winter 2008 network link physical application transport network link physical Introduction data application transport network link physical 20 A Closer Look at Network Structure: • network edge: applications and hosts • network core: – routers – network of networks • access networks, physical media: communication links winter 2008 Introduction 21 The Network Edge: • end systems (hosts): – run application programs – e.g., WWW, email – at “edge of network” • client/server model – client host requests, receives service from server – e.g., WWW client (browser)/ server; email client/server • peer-peer model: – host interaction symmetric – e.g.: Gnutella, KaZaA winter 2008 Introduction 22 Network Edge: Connection-Oriented Service Goal: data transfer TCP service [RFC 793] between end sys. • reliable, in-order byte• handshaking: setup stream data transfer (prepare for) data – loss: acknowledgements and transfer ahead of time retransmissions – Hello, hello back human protocol – set up “state” in two communicating hosts • TCP - Transmission Control Protocol • flow control: – sender won’t overwhelm receiver • congestion control: – senders “slow down sending rate” when network congested – Internet’s connectionoriented service winter 2008 Introduction 23 Network Edge: Connectionless Service App’s using TCP: Goal: data transfer between end systems – same as before! • UDP - User Datagram Protocol [RFC 768]: Internet’s connectionless service – unreliable data transfer – no flow control – no congestion control winter 2008 Introduction • HTTP (WWW), FTP (file transfer), Telnet (remote login), SMTP (email) App’s using UDP: • streaming media, teleconferencing, Internet telephony 24 Access Networks and Physical Media Q: How to connect end systems to edge router? • residential access nets • institutional access networks (school, company) • mobile access networks Keep in mind: • bandwidth (bits per second) of access network? • shared or dedicated? winter 2008 Introduction 25 Example Access Net: Home Network Typical home network components: • ADSL or cable modem • router/firewall • Ethernet • wireless access point to/from cable router/ cable modem firewall headend Ethernet (switched) winter 2008 Introduction wireless laptops wireless access point 26 The Network Core • mesh of interconnected routers • the fundamental question: how is data transferred through net? – circuit switching: dedicated circuit per call: telephone net – packet-switching: data sent thru net in discrete “chunks” winter 2008 Introduction 27 Network Core: Routing Goal: move data among routers from source to dest. datagram packet network: circuit-switched network: – destination address determines next hop – routes may change during session – analogy: driving, asking directions – No notion of call state virtual circuit network: – packet carries tag, tag determines next hop – fixed path (for call) determined at call setup time – routers maintain little per-call state; resources not allocated winter 2008 Introduction – call allocated time slots of bandwidth at each link – fixed path (for call) determined at call setup – switches maintain lots of per call state (what?): resource allocation 28