1 / 30

[Architecture & Protocols]

[Architecture & Protocols]. Internet Architecture. Client--Server Architecture Client: local applications that initiates communication (this initiation is often necessary to run the application) Clients request services from remote machines

Télécharger la présentation

[Architecture & Protocols]

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. [Architecture & Protocols]

  2. Internet Architecture • Client--Server Architecture • Client: local applications that initiates communication (this initiation is often necessary to run the application) • Clients request services from remote machines • Server: software that makes services or files available to clients • Clients and servers do not refer to specific computers although it often seems that way …

  3. Internet Architecture • Associated with each application is a • Client: the software with which the user interacts (usually local) • Server: the software the client talks to behind the scenes that performs particular services • Protocol: the agreed upon language or commands the client and server use to communicate with each other. Defined by Internet RFCs.

  4. Application: Telnet • Used to establish a “dumb terminal” session to another computer (host / ‘server’) on the Internet • Initiating computer (‘client’) indicates the IP address of the host (sort of like dialing) • The host/server: • Provides dumb terminal access and allows users to interact using a ‘shell account’ • Maintains a full-time, direct connection that is always on the network • The client: • Is the software that initiates the telnet connection • Provides an interface and a set of features for the end user

  5. Demonstration using: • Telnet utility (command line telnet) • Secure Shell Client

  6. Application: WWW • 1990, 1991: Created by Tim Berners-Lee who was a research fellow at the European Laboratory for Particle Physics (CERN) in Switzerland • Idea focused on creating a scalable, open system for linking related documents via the Internet, and a system where users could find and contribute information • These guys needed an easier way to organize, present, store and access documents!! • Berners-Lee makes up “WorldWideWeb” as a name for his program

  7. Application: WWW • Berners-Lee wanted the WWW to be open to existing Internet protocols (e.g. TCP/IP), so he designed it to read these protocols • This was in part accomplished by specifying the protocol at the beginning of the link address (http://) • Berners-Lee standardized HTML • The most popular web client is a browser

  8. Client: Web Browsers • Web browsers are often called universal clients because most can speak other protocols (e.g. telnet) • Marc Andreessen created a point-and-click browser, Mosaic (University of Illinois, 1993) • Increased WWW usage at UI over 340,000% • Mosaic => Netscape => Mozilla (Firefox) • We access information using URLs • IP addresses • Domain Name Service (DNS) • Directory / Path information

  9. Directory and path information • Absolute and relative paths

  10. Servers: Web • Web servers make information available to clients • Web servers typically run in Unix, Linux or NT environments • Web servers typically run on ‘super’ machines (e.g. workstations) rather than individual PCs BUT you can run a personal Web server on your PC • Popular Web servers: • Apache • Internet Information Server (IIS) • Server configuration : htdocs and public_html

  11. LAMP • Linux, Apache, mySQL, and Perl/PHP/Python

  12. Back to the network of networks … • The Internet is really just a large collection of smaller networks (LANs) • Special devices called routers interconnect these LANs and act as traffic cops controlling the data that passes across the network

  13. LANs: The Physical Aspects • Each device on the LAN requires a Network Interface Card (may be a card that is added or just a chip on the device) • Some wiring to make the physical connections (usually twisted pair copper but can also be coaxial cable or fiber optic cable) • May need to have other components like switches, etc. to interconnect it all • Ethernet is a popular LAN architecture

  14. Internet Communication • When you think of communication technologies, there are essentially two approaches: • A circuit switch approach where there is a dedicated connection between two devices (e.g., a telephone) • A packet switch approach where the ‘bandwidth’ is shared and all data is broken down and transmitted in packets • Packet switching allows for multiple connections to share the same physical medium

  15. Packet Switching • Almost all information shared over a computer network is broken down into small packets • These packets vary in size (0.5KB to 1.5KB) • A page of text does not necessary equal 1 packet • Each packet includes information about the origin and destination of the data and the data itself • Packet transmission uses TCP/IP

  16. Packet Switching There are two kinds of packets: • Internet packet datagram – the actual contents of whatever resource you are requesting (e.g., web page) • Network packet – used to send internet packet datagrams from router to router

  17. A C C C D C D D B Shared Network System 1st packet from A to C 1st packet from B to D 2nd packet from A to C 2nd packet from B to D 3rd packet from A to C

  18. Routers • Special purpose computers used to interconnect networks • Major task performed by routers: move packets from one network to another

  19. LAN at site 2 LAN at site 1 LAN at site 3 Wide Area Backbone LAN at site 4 LAN at site 6 LAN at site 5 LAN at site 7 A visual

  20. TCP/IP Overview • Transmission Control Protocol (TCP) disassembles and reassembles data • Breaks data into packets (~1KB) and labels packets with: • Origin and destination IP address • Order of packets and checksum (for reassembly) • Internet Protocol (IP) is responsible for addressing and routing individual network packets (IP envelops)

  21. TCP • At the server, TCP breaks down information into datagrams • At the client, TCP checks incoming datagrams and reassembles them • Acknowledgement is sent to server if everything is okay • When TCP sends data, it stamps each packet with a Time to Live (TTL)

  22. TCP • Routers can store some datagrams in memory (queue) in case of congestion, but there is a limit • What happens if datagrams arrive faster than they can leave the router? • They are discarded! • TCP addresses this problem by checking for lost datagrams at destination and taking action

  23. IP • IP dictates that each ‘host’ or device connected to the network has a unique address • Even routers get IP addresses • This address is a 32 bit number in dotted-decimal notation • Traditionally represented in this form: 152.2.81.1 • These numbers take on values from 0-255 • 2564 different IP addresses • However … IPv6 = 16 byte IP addresses = 25616

  24. IP • IP addresses are not random • There are different classes of networks on the Internet, Class A, B and C are the most common • One’s network ‘class’ determines how many machines one can connect: • 152.x.x.x vs. 152.2.81.x • IANA (Internet Assigned Numbers Authority) hands out Internet numbers. The assignment of numbers may be further delegated as needed • UNC was delegated responsibility for 152.2.x.x numbers • SILS was given responsibility for 152.2.81.x numbers

  25. Static & Dynamic IP Addresses • With static IP addressing, every machine has a unique IP addressed assigned to it • An alternative is dynamic IP addressing, where • Your computer is assigned an IP address at the time of connection • There is a pool of IP addresses that are handed out as needed • Most popular method today is DHCP (Dynamic Host Configuration Protocol) • Typically used by ISPs with home dial-in users

  26. Names not numbers: DNS • Domain Name Service (DNS) is a distributed directory service that supports the automatic mapping of DNs to IP addresses • DNS server stores name/address pairs • Looks up address and substitutes the numeric IP address • Gives this information to the TCP/IP • DNS servers update themselves

  27. DNS • Top level domains : .com, .edu, .org, .gov, .mil, country codes • Domains are hierarchical • unc.edu, ils.unc.edu, pc3.ils.unc.edu • When you configure a computer’s network connection, you must specify a DNS server • ‘www’ is a name

  28. Routing • Routing Process: • Open and examine packets • Compare to routing table • Calculate the best route • Send packet toward its final destination • Two routing ports: receiving (input) and sending (output) • Static and dynamic routing tables • Routers have IP addresses and their own protocols

  29. Routing & TCP • Routers can store some datagrams in memory (queue) in case of congestion, but there is a limit • What happens if datagrams arrive faster than they can leave the router? • They are discarded until congestion clears! • TCP addresses this problem by checking for lost datagrams at destination and taking action (i.e., re-requesting resource)

  30. Let’s look at some of this stuff in action with ping & tracert • Using your computer, go to Start > Run, type cmd and hit enter to get a window

More Related