Server Transac2on Hardware Organiza2on of a Network Host

Server Transac2on Hardware Organiza2on of a Network Host

Carnegie Mellon Carnegie Mellon A Client-Server Transac8on 1. Client sends request Client Server process process Resource Internetworking 4. Client 3. Server sends response 2. Server 15-213/18-213: Introduc2on to Computer Systems handles handles 20th Lecture, April. 3, 2013 response request Note: clients and servers are processes running on hosts (can be the same or different hosts) Instructors: Todd C. Mowry and Anthony Rowe ¢ Most network applica8ons are based on the client-server model: § A server process and one or more client processes § Server manages some resource § Server provides service by manipulang resource for clients § Server ac2vated by request from client (vending machine analogy) Carnegie Mellon Carnegie Mellon Hardware Organiza8on of a Network Host Computer Networks CPU chip register file ¢ A network is a hierarchical system of boxes and wires organized by geographical proximity ALU § SAN (System Area Network) spans cluster or machine room system bus memory bus § Switched Ethernet, Quadrics QSW, … § LAN (Local Area Network) spans a building or campus I/O main MI § Ethernet is most prominent example bridge memory § WAN (Wide Area Network) spans country or world § Typically high-speed point-to-point phone lines Expansion slots ¢ An internetwork (internet) is an interconnected set of I/O bus networks USB graphics disk network § The Global IP Internet (uppercase “I”) is the most famous example controller adapter controller adapter of an internet (lowercase “i”) mouse keyboard monitor ¢ Let’s see how an internet is built from the ground up disk network 1 Carnegie Mellon Carnegie Mellon What is the Internet? Lowest Level: Ethernet Segment host host host 100 Mb/s 100 Mb/s hub port ¢ Ethernet segment consists of a collec8on of hosts connected by wires (twisted pairs) to a hub ¢ Spans room or floor in a building ¢ Operaon § Each Ethernet adapter has a unique 48-bit address (MAC address) § E.g., 00:16:ea:e3:54:e6 § Hosts send bits to any other host in chunks called frames § Hub slavishly copies each bit from each port to every other port § Every host sees every bit § Note: Hubs are on their way out. Bridges (switches, routers) became cheap enough to replace them (means no more broadcas2ng) Carnegie Mellon Carnegie Mellon Next Level: Bridged Ethernet Segment Conceptual View of LANs A B ¢ For simplicity, hubs, bridges, and wires are o\en shown as a host host host host host collecon of hosts aached to a single wire: X hub 100 Mb/s bridge 100 Mb/s hub host host ... host 1 Gb/s host host 100 Mb/s 100 Mb/s hub bridge hub Y host host host host host C ¢ Spans building or campus ¢ Bridges cleverly learn which hosts are reachable from which ports and then selec8vely copy frames from port to port 2 Carnegie Mellon Carnegie Mellon Next Level: internets Logical Structure of an internet ¢ Mul8ple incompa8ble LANs can be physically connected by host specialized computers called routers router host router ¢ The connected networks are called an internet router router router router host host ... host host host ... host LAN LAN router router router WAN WAN ¢ Ad hoc interconnec8on of networks § No par2cular topology § Vastly different router & link capaci2es LAN 1 and LAN 2 might be completely different, totally incompaHble ¢ Send packets from source to des8na8on by hopping through (e.g., Ethernet and Wifi, 802.11*, T1-links, DSL, …) networks § Router forms bridge from one network to another § Different packets may take different routes Carnegie Mellon Carnegie Mellon The Noon of an internet Protocol What Does an internet Protocol Do? ¢ How is it possible to send bits across incompa8ble LANs ¢ Provides a naming scheme and WANs? § An internet protocol defines a uniform format for host addresses § Each host (and router) is assigned at least one of these internet addresses that uniquely iden2fies it ¢ Soluon: § protocol soaware running on each host and router ¢ Provides a delivery mechanism § smooths out the differences between the different networks § An internet protocol defines a standard transfer unit (packet) § Packet consists of header and payload ¢ Implements an internet protocol (i.e., set of rules) § Header: contains info such as packet size, source and des2naon § governs how hosts and routers should cooperate when they addresses transfer data from network to network § Payload: contains data bits sent from source host § TCP/IP is the protocol for the global IP Internet 3 Carnegie Mellon Carnegie Mellon Transferring Data Over an internet Other Issues LAN1 Host A Host B LAN2 ¢ We are glossing over a number of important quesons: client server § What if different networks have different maximum frame sizes? (1) data (8) data (segmentaon) § How do routers know where to forward frames? protocol protocol internet packet soware soware § How are routers informed when the network topology changes? (2) data PH FH1 (7) data PH FH2 § What if packets get lost? LAN1 frame LAN1 LAN2 adapter adapter Router ¢ These (and other) quesons are addressed by the area of (3) data PH FH1 (6) data PH FH2 systems known as computer networking LAN1 LAN2 adapter adapter LAN2 frame (4) data PH FH1 data PH FH2 (5) protocol PH: Internet packet header soware FH: LAN frame header Carnegie Mellon Carnegie Mellon Global IP Internet Hardware and Soware Organizaon ¢ Most famous example of an internet of an Internet Applica8on ¢ Based on the TCP/IP protocol family § IP (Internet protocol) : Internet client host Internet server host § Provides basic naming scheme and unreliable delivery capability Client User code Server of packets (datagrams) from host-to-host Sockets interface § UDP (Unreliable Datagram Protocol) (system calls) § Uses IP to provide unreliable datagram delivery from TCP/IP Kernel code TCP/IP process-to-process Hardware interface § TCP (Transmission Control Protocol) (interrupts) § Uses IP to provide reliable byte streams from process-to-process Network Hardware Network over connecons adapter and firmware adapter ¢ Accessed via a mix of Unix file I/O and func8ons from the Global IP Internet sockets interface 4 Carnegie Mellon Carnegie Mellon Protocol Layers Basic Internet Components ¢ Internet backbone: § collec2on of routers (naonwide or worldwide) connected by high-speed point-to-point networks ¢ Network Access Point (NAP): § router that connects mul2ple backbones (oaen referred to as peers) HTTP, SSL, NTP, … ¢ Regional networks: § smaller backbones that cover smaller geographical areas TCP, UDP (e.g., ci2es or states) ¢ Point of presence (POP): IP, ICMP § machine that is connected to the Internet Ethernet MAC ¢ Internet Service Providers (ISPs): § provide dial-up or direct access to POPs Twisted Pair Wire Carnegie Mellon Carnegie Mellon NAP-Based Internet Architecture Internet Connec8on Hierarchy Private “peering” NAP NAP NAP ¢ NAPs link together commercial backbones provided by agreements companies such as AT&T and Worldcom between Colocaon two backbone sites companies Backbone Backbone Backbone Backbone ¢ Currently in the US there are about 50 commercial o[en bypass backbones connected by ~12 NAPs (peering points) NAP POP POP POP POP POP POP POP T3 ¢ Similar architecture worldwide connects na8onal networks to the Internet Regional net ISP Big Business POP POP POP POP POP POP POP Cable DSL T1 T1 modem ISP (for individuals) Small Business Pgh employee DC employee 5 Carnegie Mellon Carnegie Mellon Naming and Communicang on the Internet Evoluon of Internet: Naming ¢ Original Idea ¢ Dynamic address assignment § Every node on Internet would have unique IP address § Most hosts don't need to have known address § Everyone would be able to talk directly to everyone § Only those func2oning as servers § No secrecy or authen2caon § DHCP (Dynamic Host Configuraon Protocol) § Messages visible to routers and hosts on same LAN § Local ISP assigns address for temporary use § Possible to forge source field in packet header ¢ Example: ¢ Shortcomings § My laptop at CMU (wired connec2on) § There aren't enough IP addresses available § IP address 128.2.213.29 (bryant-tp4.cs.cmu.edu) § Don't want everyone to have access or knowledge of all other hosts § Assigned stacally § Security issues mandate secrecy & authen2caon § My laptop at home § IP address 192.168.1.5 § Only valid within home network Carnegie Mellon Carnegie Mellon Evolu8on of Internet: Firewalls Virtual Private Networks 176.3.3.3 1 10.2.2.2 Firewall Firewall 10.6.6.6 198.3.3.3 4 2 10.x.x.x 3 216.99.99.99 Corporaon X Corporaon X Internet Internet ¢ Firewalls ¢ § Hides organizaons nodes from rest of Internet Suppor8ng road warrior § Employee working remotely with assigned IP address 198.3.3.3 § Use local IP addresses within organizaon § Wants to appear to rest of corporaon as if working internally § For external service, provides proxy service § From address 10.6.6.6 1. Client request: src=10.2.2.2, dest=216.99.99.99 § Gives access to internal services (e.g., ability to send mail) 2. Firewall forwards: src=176.3.3.3, dest=216.99.99.99 3. Server responds: src=216.99.99.99, dest=176.3.3.3 ¢ Virtual Private Network (VPN) 4. Firewall forwards response: src=216.99.99.99, dest=10.2.2.2 § Overlays private network on top of regular Internet 6 Carnegie Mellon Carnegie Mellon A Programmer’s View of the Internet IP Addresses ¢ 32-bit IP addresses are stored in an IP address struct ¢ Hosts are mapped to a set of 32-bit IP addresses § IP addresses are always stored in memory in network byte order § 128.2.203.179 (big-endian byte order) § True in general for any integer transferred in a packet header from one machine to another. ¢ The set of

View Full Text

Details

  • File Type
    pdf
  • Upload Time
    -
  • Content Languages
    English
  • Upload User
    Anonymous/Not logged-in
  • File Pages
    10 Page
  • File Size
    -

Download

Channel Download Status
Express Download Enable

Copyright

We respect the copyrights and intellectual property rights of all users. All uploaded documents are either original works of the uploader or authorized works of the rightful owners.

  • Not to be reproduced or distributed without explicit permission.
  • Not used for commercial purposes outside of approved use cases.
  • Not used to infringe on the rights of the original creators.
  • If you believe any content infringes your copyright, please contact us immediately.

Support

For help with questions, suggestions, or problems, please contact us