1 / 56

CSCI411 Introduction to Computer Networking

CSCI411 Introduction to Computer Networking. Today – General Overview. Introduce basic concepts and vocabulary Networking overview Internet: What is the internet Architecture Layers. What is a Network?.

jli
Download Presentation

CSCI411 Introduction to Computer Networking

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. CSCI411 Introduction to Computer Networking

  2. Today – General Overview • Introduce basic concepts and vocabulary • Networking overview • Internet: • What is the internet • Architecture Layers

  3. What is a Network? • Basically, the collection of elements needed to enable information exchange between people, systems, or people and systems • Hardware • End points, routers, switches.. • Software • Protocols, end applications .. • Transmission media • Wires, air … • Services • Reliability • Completeness of messages

  4. Wired Network Topologies • Bus Network • Token Ring • Star

  5. Wired Network Topologies • Bus Network • Token Ring • Star

  6. Wired Network Topologies • Bus Network • Token Ring • Star • Advantage: • Fault Tolerant • Disadvantage: • lots of wires

  7. Access point • typically connected to a wired network wireless hosts • laptop, PDA, IP phone network infrastructure Mobility in a wireless network

  8. Mobility in a wireless network Ad hoc mode • no base stations • nodes can only transmit to other nodes within link coverage • nodes organize themselves into a network: route among themselves

  9. Network Structure • Local-Area Network (LAN) – designed to cover small geographical area. • Wide-Area Network (WAN) – links geographically separated sites

  10. Internet: “network of networks” Interconnected ISPs protocolscontrol sending, receiving of msgs e.g., TCP, IP, HTTP, Skype, 802.11 Internet standards RFC: Request for comments IETF: Internet Engineering Task Force What’s the Internet ? mobile network global ISP home network regional ISP institutional network Introduction

  11. A closer look at network structure: network edge: hosts: clients and servers servers often in data centers mobile network global ISP home network regional ISP • access networks, physical media: wired, wireless communication links • network core: • interconnected routers • network of networks institutional network Introduction

  12. Network Conversations Requester End-to-end communication Physical link path Network path Replier

  13. 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 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

  14. A Layered Architecture… also known as a Stack of Protocols • LAYERS: Each system is viewed logically as composed of an ordered set of subsystems. • INTERFACE: Adjacent subsystems in the vertical hierarchy (the layers) communicate through a common boundary. • ENTITIES: Functional module of each layer. Entities in the same layer but installed on different systems are called “peer” entities. • PROTOCOLS: Peer entities communicate through peer “protocols” at the appropriate (containing) layer.

  15. The OSI Reference Model • Open Systems Interconnection, OSI • Adopted as an international standard in 1983 • identifies functions and services that are fundamental to providing reliable, cost-effective, secure, and transparent communications • defines the concept of layered architecture in terms of functions, services, and protocols • became a framework for defining standards for linking heterogeneous computers… NO precise definition of how the functions would be accomplished • is the basis for connecting “open” systems for distributed application processing by creating and implementing a protocol stack

  16. OSI Layers

  17. Internet protocol stack application: supporting network applications FTP, SMTP, HTTP transport: process-process data transfer TCP, UDP network: routing of datagrams from source to destination IP, routing protocols link: data transfer between neighboring network elements Ethernet, 802.111 (WiFi), PPP physical: bits “on the wire” Application Transport Network Link Physical Introduction

  18. Internet (TCP/IP) and OSI Layers

  19. server browser TCP TCP Network Network Link Link Phys Phys Up and Down the Layers HTTP msg TCP segment pkt Network Link Link frm Phy Phys bits Relay Node Open System B Open System A router

  20. User Data IP hdr TCP segment Linkhdr Network segment MAC trlr MAC hdr Link layer segment MAC frame View of Encapsulation TCP hdr

  21. TCP/IP Message Flow HTTP messages Application Layer Application Layer TCP segments Transport Layer Transport Layer Service Access Point IP packets Network Layer Network Layer Ethernet frames Data Link Layer Data Link Layer Interface Physical Layer Physical Layer bits

  22. Payload Network layer hdr Payload Link Layer hdr Payload MAC hdr MAC trlr Payload MAC frame User Message Application Layer Application hdr Transport layer hdr

  23. Creating a network app write programs that: run on (different) end systems communicate over network e.g., web server software communicates with browser software no need to write software for network-core devices network-core devices do not run user applications applications on end systems allows for rapid app development, propagation application transport network data link physical application transport network data link physical application transport network data link physical Application Layer

  24. Client-server architecture server: • always-on host • permanent IP address • data centers for scaling clients: • communicate with server • may be intermittently connected • may have dynamic IP addresses • do not communicate directly with each other client/server Application Layer

  25. P2P architecture peer-peer • no always-on server • arbitrary end systems directly communicate • peers request service from other peers, provide service in return to other peers • self scalability – new peers bring new service capacity, as well as new service demands • peers are intermittently connected and change IP addresses • complex management Application Layer

  26. data integrity some apps (e.g., file transfer, web transactions) require 100% reliable data transfer other apps (e.g., audio) can tolerate some loss timing some apps (e.g., Internet telephony, interactive games) require low delay to be “effective” What transport service does an app need? throughput • some apps (e.g., multimedia) require minimum amount of throughput to be “effective” • other apps (“elastic apps”) make use of whatever throughput they get security • encryption, data integrity, … Application Layer

  27. DNS services hostname to IP address translation host aliasing canonical, alias names mail server aliasing load distribution replicated Web servers: many IP addresses correspond to one name DNS: domain name system Domain Name System: distributed database implemented in hierarchy of many name servers application-layer protocol: hosts, name servers communicate to resolvenames (address/name translation) note: core Internet function, implemented as application-layer protocol complexity at network’s “edge” Application Layer

  28. Root DNS Servers org DNS servers edu DNS servers com DNS servers poly.edu DNS servers umass.edu DNS servers pbs.org DNS servers yahoo.com DNS servers amazon.com DNS servers DNS: a distributed, hierarchical database … … client wants IP for www.amazon.com; 1st approx: • client queries root server to find com DNS server • client queries .com DNS server to get amazon.com DNS server • client queries amazon.com DNS server to get IP address for www.amazon.com Application Layer

  29. process: program running within a host within same host, two processes communicate using inter-process communication (defined by OS) processes in different hosts communicate by exchanging messages client process:process that initiates communication server process:process that waits to be contacted Processes communicating clients, servers • aside: applications with P2P architectures have client processes & server processes Application Layer

  30. Sockets • process sends/receives messages to/from its socket • socket analogous to door • sending process shoves message out door • sending process relies on transport infrastructure on other side of door to deliver message to socket at receiving process application application socket controlled by app developer process process transport transport controlled by OS network network link Internet link physical physical Application Layer

  31. to receive messages, process must have identifier host device has unique 32-bit IP address Q: does IP address of host on which process runs suffice for identifying the process? identifierincludes both IP address and port numbers associated with process on host. example port numbers: HTTP server: 80 mail server: 25 to send HTTP message to gaia.cs.umass.edu web server: IP address:128.119.245.12 port number:80 Addressing processes • A: no, many processes can be running on same host Application Layer

  32. Payload Network layer hdr Payload Link Layer hdr Payload MAC hdr MAC trlr Payload MAC frame User Message Transport layer Application hdr Transport layer hdr

  33. providelogical communication between app processes running on different hosts transport protocols run in end systems send side: breaks app messages into segments, passes to network layer rcv side: reassembles segments into messages, passes to app layer more than one transport protocol available to apps Internet: TCP and UDP application transport network data link physical application transport network data link physical logical end-end transport Transport services and protocols TransportLayer

  34. reliable, in-order delivery (TCP) congestion control flow control connection setup unreliable, unordered delivery: UDP no-frills extension of “best-effort” IP services not available: delay guarantees bandwidth guarantees application transport network data link physical application transport network data link physical network data link physical network data link physical network data link physical network data link physical network data link physical network data link physical network data link physical logical end-end transport Internet transport-layer protocols TransportLayer

  35. TCP service: reliable transportbetween sending and receiving process flow control: sender won’t overwhelm receiver congestion control: throttle sender when network overloaded does not provide: timing, minimum throughput guarantee, security connection-oriented: setup required between client and server processes UDP service: unreliable data transfer between sending and receiving process does not provide: reliability, flow control, congestion control, timing, throughput guarantee, security, orconnection setup, Q: why bother? Why is there a UDP? Internet transport protocols services Application Layer

  36. Payload Network layer hdr Payload Link Layer hdr Payload MAC hdr MAC trlr Payload MAC frame User Message Network layer Application hdr Transport layer hdr

  37. transport segment from sending to receiving host on sending side encapsulates segments into datagrams on receiving side, delivers segments to transport layer network layer protocols in everyhost, router router examines header fields in all IP datagrams passing through it network data link physical network data link physical network data link physical network data link physical network data link physical network data link physical network data link physical network data link physical network data link physical network data link physical network data link physical application transport network data link physical application transport network data link physical Network layer Network Layer

  38. Routing Strategies • Fixed routing - A path from A to B is specified in advance; path changes only if a hardware failure disables it • Since the shortest path is usually chosen, communication costs are minimized • Virtual circuit - A path from A to B is fixed for the duration of one session. Different sessions involving messages from A to B may have different paths • Partial remedy to adapting to load changes • Ensures that messages will be delivered in the order in which they were sent

  39. high-seed switching fabric Router architecture overview two key router functions: • run routing algorithms/protocol (RIP, OSPF, BGP) • forwarding datagrams from incoming to outgoing link forwarding tables computed, pushed to input ports routing processor routing, management control plane (software) forwarding data plane (hardware) router input ports router output ports Network Layer

  40. Q: how are interfaces actually connected? A: Happens in the link layer 223.1.1.2 223.1.3.27 IP addressing: introduction 223.1.1.1 223.1.2.1 223.1.1.4 223.1.2.9 223.1.1.3 223.1.2.2 A: wired Ethernet interfaces connected by Ethernet switches 223.1.3.2 223.1.3.1 For now: don’t need to worry about how one interface is connected to another (with no intervening router) A: wireless WiFi interfaces connected by WiFi base station Network Layer

  41. NAT: network address translation rest of Internet local network (e.g., home network) 10.0.0/24 10.0.0.1 10.0.0.4 10.0.0.2 138.76.29.7 10.0.0.3 datagrams with source or destination in this network have 10.0.0/24 address for source, destination (as usual) all datagrams leaving local network have same single source NAT IP address: 138.76.29.7,different source port numbers Network Layer

  42. Routing Strategies (Cont.) • Dynamic routing - The path used to send a message form site A to site B is chosen only when a message is sent • Usually a site sends a message to another site on the link least used at that particular time • Adapts to load changes by avoiding routing messages on heavily used path • Messages may arrive out of order • This problem can be remedied by appending a sequence number to each message

  43. Connection Strategies • Circuit switching - A permanent physical link is established for the duration of the communication (i.e., telephone system) • Message switching - A temporary link is established for the duration of one message transfer (i.e., post-office mailing system) • Packet switching - Messages of variable length are divided into fixed-length packets which are sent to the destination • Each packet may take a different path through the network • The packets must be reassembled into messages as they arrive • Circuit switching requires setup time, but incurs less overhead for shipping each message, and may waste network bandwidth • Message and packet switching require less setup time, but incur more overhead per message

  44. Contention Several sites may want to transmit information over a link simultaneously. Techniques to avoid repeated collisions include: • CSMA/CD - Carrier sense with multiple access (CSMA); collision detection (CD) • A site determines whether another message is currently being transmitted over that link. If two or more sites begin transmitting at exactly the same time, then they will register a CD and will stop transmitting • When the system is very busy, many collisions may occur, and thus performance may be degraded • CSMA/CD is used successfully in the Ethernet system, the most common network system

  45. Contention (Cont.) • Token passing - A unique message type, known as a token, continuously circulates in the system (usually a ring structure) • A site that wants to transmit information must wait until the token arrives • When the site completes its round of message passing, it retransmits the token • A token-passing scheme is used by some IBM and HP/Apollo systems • Message slots - A number of fixed-length message slots continuously circulate in the system (usually a ring structure) • Since a slot can contain only fixed-sized messages, a single logical message may have to be broken down into a number of smaller packets, each of which is sent in a separate slot • This scheme has been adopted in the experimental Cambridge Digital Communication Ring

  46. Payload Network layer hdr Payload Link Layer hdr Payload MAC hdr MAC trlr Payload MAC frame User Message Link Layer of Encapsulation Application hdr Transport layer hdr

  47. terminology: hosts and routers: nodes communication channels that connect adjacent nodes along communication path: links wired links wireless links LANs layer-2 packet: frame,encapsulates datagram Link layer: introduction global ISP data-link layer has responsibility of transferring datagram from one node to physically adjacent node over a link Link Layer

  48. Link layer services • framing, link access: • encapsulate datagram into frame, adding header, trailer • channel access if shared medium • “MAC” addresses used in frame headers to identify source, dest • different from IP address! • reliable delivery between adjacent nodes • we learned how to do this already (chapter 3)! • seldom used on low bit-error link (fiber, some twisted pair) • wireless links: high error rates • Q: why both link-level and end-end reliability? Link Layer

  49. Link layer services (more) • flow control: • pacing between adjacent sending and receiving nodes • error detection: • errors caused by signal attenuation, noise. • receiver detects presence of errors: • signals sender for retransmission or drops frame • error correction: • receiver identifies and corrects bit error(s) without resorting to retransmission • half-duplex and full-duplex • with half duplex, nodes at both ends of link can transmit, but not at same time Link Layer

  50. in each and every host link layer implemented in “adaptor” (aka network interface card NIC) or on a chip Ethernet card, 802.11 card; Ethernet chipset implements link, physical layer attaches into host’s system buses combination of hardware, software, firmware application transport network link link physical Where is the link layer implemented? cpu memory host bus (e.g., PCI) controller physical transmission network adapter card Link Layer

More Related