1 / 80

CS 352 Spring 2005 Internet Technology Fundamentals

CS 352 Spring 2005 Internet Technology Fundamentals Dept. of Computer Science Rutgers University Administrative Class web page: http://remus.rutgers.edu/cs352/S05/ Not up yet (check Thursday noon) Notes/Slides Announcements Projects Homeworks Old exams Course Goals

benjamin
Download Presentation

CS 352 Spring 2005 Internet Technology Fundamentals

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. CS 352Spring 2005Internet TechnologyFundamentals Dept. of Computer Science Rutgers University

  2. Administrative Class web page: • http://remus.rutgers.edu/cs352/S05/ • Not up yet (check Thursday noon) • Notes/Slides • Announcements • Projects • Homeworks • Old exams

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

  4. Course goals (cont.) • 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.

  5. Course Approach • Lectures: theory behind how networks operate • Tested in exams • See last semesters’ classes for sample problems • Programming assignments: • Real world experience with networks • Program design • Communicating your design

  6. Course Work • 2 Mid-terms (15% each) • Class participation (10%) • Final (30%) • Project (30%) • Part 1 (8%) • Part 2 (10%) • Part 3 (12%)

  7. Programming assignments • Single long project • Broken into three parts • Can work in a group of 2 • Both program and write-up required • Background needed to get started: • Java (112+ level) • Comfortable using data structures(stacks, trees, vector) • Unix (login, handin, permissions, javac)

  8. Programming Assignment • 2 Code reviews • 15 minute oral question and answer period. • TA an instructor will critically review your assignment. • “lost art” of program design. • Make improvements for next level of the assignment. • Grade depends on level of improvement in code quality as well as functionality.

  9. Facilities • “Cereal” machines and lab • ~20 UltraSparc machines • ~30+ Linux machines • Romulus and remus for general use • Create your accounts now! • http://remus.rutgers.edu/newaccount.html • Cardkey Access: See your TA

  10. Why Study Networks? • Integral part of society • Work, entertainment, community • Pervasive • Home, car, office, school, mall … • Understand what they do, how they work, and limitations • Any jobs left? • What happened to IT? • Future of the IT industry.

  11. Impact of the Net on People • Anytime access to remote information • HW assignments from my server • Person-to-person and group communication • email, blogs, chat, meeting • Form and strengthen communities • chat rooms, MUDs, newsgroups

  12. Impact of the Net on Society • Huge impact! • Continuation of technologies that reduce problems of time & space • (e.g. railroads,phone,autos,TV) • Good, bad and ugly • mirror of society • Changes still on the horizon • Commerce, services, entertainment, socializing

  13. Internet Roles • Users • Everyone (mom and pop, kids) • work, leisure, serious, frivolous • Designers • protocol design and implementation • performance, cost and scale • Service Providers • Administrators and ISPs • Management, revenue, deployment

  14. What is Internet Technology? • What is an internet? • Network of networks • What is the Internet? • A global internet based on the IP protocol • To what does “Internet technology” refer? • Architecture, protocols and services

  15. Sample Internet Applications • Electronic mail • Remote terminal • File transfer • Newsgroups • File sharing • Resource distribution • World Wide Web • Video conferencing • Games

  16. What is a Network? • Carrier of information between 2 or more entities • Interconnection may be any media capable of communicating information: • copper wire • lasers • microwave • satellite link

  17. Some Definitions • Network: Collection of interconnected machines • Host: Machine running user application • Channel: Logical line of communication • Media: Physical process used • Protocol: Rules of communication • Router: decide were to send data next • Topology: How network is interconnected

  18. How Do Computers Communicate? • With 1’s and 0’s • Computers only deal with 1’s and 0’s • So do networks • Must build all further structures from this basic representation • How do we transmit 1’s and 0’s in a network?

  19. Physical Transmission A physical quantity (e.g. voltage), varying over time represents a digital 0 or 1

  20. Concepts for this week • Layering and encapsulation • IP Hourglass • Core and Edge of the Internet • Circuit, message and packet switching • Single link transmission delay • Multi-link transmission delay • Circuit switching • Message switching • Packet switching • Computing general pipelining delay

  21. Layering and Encapsulation

  22. Why Layering? • Network communication is very complex • Separation of concerns • Different vendors and organizations responsible for different layers • Testing and maintenance is simplified • Easy to replace a single layer with a different version

  23. Protocol Hierarchy • 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 • Protocols • Each layer communicates with its peer by a set of rules • Interface • A layers interface specifies the operations

  24. Protocol Hierarchy (cont’d) Host A Host B Layer 7 Protocol Layer 7 Layer 7 Layer 6 Protocol Layer 6 Layer 6 Layer 5 Protocol Layer 5 Layer 5 Layer 4 Protocol Layer 4 Layer 4 Layer 3 Protocol Layer 3 Layer 3 Layer 2 Protocol Layer 2 Layer 2 Layer 1 Protocol Layer 1 Layer 1 Physical Medium

  25. Different Layering Architectures • ISO OSI 7-Layer Architecture • TCP/IP 4-Layer Architecture • + application layer = 5 layers in Kurose • Novell NetWare IPX/SPX 4-Layer Architecture

  26. Standards Making Organizations ISO = International Standards Organization ITU = International Teletraffic Union (formerly CCITT) ANSI = American National Standards Institute IEEE = Institute of Electrical and Electronic Engineers IETF = Internet Engineering Task Force ATM Forum = ATM standards-making body ...and many more

  27. Why So Many Standards Organizations? • Multiple technologies • Different areas of emphasis and history • Telecommunications/telephones • ITU,ISO,ATM • Local area networking/computers • IETF, IEEE • System area networks/storage • ANSI

  28. ISO OSI Layering Architecture Host A Host B Application Protocol Application Layer Application Layer Presentation Protocol Presentation Layer Presentation Layer Session Protocol Session Layer Session Layer Transport Protocol Transport 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 Router Router

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

  30. Layer 1: Physical Layer • Functions: • Transmission of a raw bit stream • Forms the physical interface between devices • Issues: • Which modulation technique (bits to pulse)? • How long will a bit last? • Bit-serial or parallel transmission? • Half- or Full-duplex transmission? • How many pins does the network connector have? • How is a connection set up or torn down?

  31. Layer 2: Data Link Layer • Functions: • Provides reliable transfer of information between two adjacent nodes • Creates frames, or packets, from bits and vice versa • Provides frame-level error control • Provides flow control • In summary, the data link layer provides the network layer with what appears to be an error-free link for packets

  32. Layer 3: Network Layer • Functions: • Responsible for routing decisions • Dynamic routing • Fixed routing • Performs congestion control

  33. Layer 4: Transport Layer • Functions: • Hide the details of the network from the session layer • Example: If we want replace a point-to-point link with a satellite link, this change should not affect the behavior of the upper layers • Provides reliable end-to-end communication

  34. Transport Layer (cont’d) Host A Host B Application Protocol Application Layer Application Layer first end-to-end layer Presentation Protocol Presentation Layer Presentation Layer Session Protocol Session Layer Session Layer Transport Protocol Transport 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 Router Router

  35. Transport Layer (cont’d) • Functions (cont’d): • Perform end-to-end flow control • Perform packet retransmission when packets are lost by the network

  36. Layer 5: Session Layer • May perform synchronization between several communicating applications or logical transmissions • Groups several user-level connections into a single “session” • Examples: • Banking session • Network meetings

  37. Layer 6: Presentation Layer • Performs specific functions that are requested regularly by applications • Examples: • encryption • ASCII to Unicode, Unicode to ASCII • LSB-first representations to MSB-first representations

  38. Layer 7: Application Layer • Application layer protocols are application-dependent • Implements communication between two applications of the same type • Examples: • FTP • Quake • SMTP (email)

  39. Encapsulation Treat the neighboring 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 • headers in front • trailers in back • Receiving: Strip off headers and trailers before handing up the stack

  40. AH Data SH Data TH Data Encapsulation • Headers • Trailer Data Application Layer Presentation Layer PH Data Session Layer Transport Layer Network Layer NH Data Data Link Layer DH Data DT Physical Layer PH Data

  41. FTP HTTP RTP TFTP UDP TCP IP … Ethernet 802.11 PPP CAT-5 Single-Mode Fiber RS-232 Internet “Hourglass” Architecture • Defined by Internet Engineering Task Force (IETF) • “Hourglass” Design

  42. Internet Design Principles • Scale • Protocols should work in networks of all sizes and distances • Incremental deployment • New protocols need to be deployed gradually • Heterogeneity • Different technologies, autonomous organizations • End-to-end argument • Some functions can only be correctly implemented at the end hosts; the network should not provided these.

  43. TCP/IP Layering Architecture • A simplified model • The network layer • Hosts drop packets into this layer, layer routes towards destination- only promise- try my best • The transport layer • reliable byte-oriented stream Application Transport Internet/Network Host-to-Net

  44. Host A Application Layer Transport Layer Network Layer Host-to- Net Layer TCP/IP Layering Architecture (cont’d) Host B Application Protocol Application Layer Transport Protocol (TCP) Transport Layer IP IP IP Network Layer Network Layer Network Layer Host-to- Net Layer Host-to- Net Layer Host-to- Net Layer

  45. Internet Topology • Current structure divides network into the “core” and “edge” networks • Core ISP’s “tiers” • Tier 1: Biggest ISPs • E.g. MCI, Sprint, AT&T • Tier 2 and 3: Regional and very small. • Edges: • Companies, organizations with a “default route” • E.g. Rutgers

  46. Edge Networks Internet Service Provider 1 Company A ISP 2 Company B Edge router

  47. Internet Service Provider 1 Company A ISP 2 Company B Core Networks

  48. Single link Network Performance A Brief Introduction

  49. Why Study Network Performance • Networks cost $ • OC-3 line ~= $10,000/month • Cable modem: $40/month • Are you getting your $/worth? • Why is the network “slow”? • Approach: • Build abstract models of network performance • Observe where real networks deviate from model • Simple Models: Tells us average/best/worse cases->useful, practical • Complex Models: Hard to understand -> useless

  50. Digression: Units • Bits are the units used to describe an amount of data in a network • 1 kilobit (Kbit) = 1 x 103 bits = 1,000 bits • 1 megabit (Mbit) = 1 x 106 bits = 1,000,000 bits • 1 gigabit (Gbit) = 1 x 109 bits = 1,000,000,000 bits • Seconds are the units used to measure time • 1 millisecond (msec) = 1 x 10-3 seconds = 0.001 seconds • 1 microsecond (msec) = 1 x 10-6 seconds = 0.000001 seconds • 1 nanosecond (nsec) = 1 x 10-9 seconds = 0.000000001 seconds • Bits per second are the units used to measure channel capacity/bandwidth and throughput • bit per second (bps) • kilobits per second (Kbps) • megabits per second (Mbps)

More Related