Information About Internent Banking by igh16922

VIEWS: 9 PAGES: 76

More Info
									             CS 352
Internet Technology
   Dept. of Computer Science
            Rutgers University
Administrative
   Instructor :         Richard Martin
   TA:                  TBA
   Textbook
     James F. Kurose and Keith W. Ross, Computer Networking, 3rd
       edition.
   Class webpage
     http://remus.rutgers.edu/cs352/S06/
     Announcements
     Lecture notes
     Projects
     Homeworks
     Old exams




CS352   Fall, 2005                                                  2
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



CS352   Fall, 2005                                 3
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.




CS352   Fall, 2005                                            4
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

CS352   Fall, 2005                                           5
Course Work
   2 Mid-terms (15% each)
          No electronic devices or notes allowed. No cheat sheets
           allowed
   Final (35%)
          You must send the instructor email at least 2 weeks before
           the final if you need to take the makeup!
   Project (35%)
          Part 1 (10%)
          Part 2 (10%)
          Part 3 (15%)

CS352   Fall, 2005                                                      6
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)


CS352   Fall, 2005                                                              7
Programming Assignment
   2 Code reviews
          10-15 minute oral question and answer period.
          TA and 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.
   No late handin
          Failure to meet the deadline will result in a zero for all team
           members. No exceptions!
CS352   Fall, 2005                                                       8
Academic integrity
   No cheating on projects and exams
          Run code similarity detectors on the projects &
           code review
          Scrutinize exams for copying
   Department academic integrity policy
          http://www.cs.rutgers.edu/policies/academicintegri
           ty/
          Acknowledge your awareness of this policy by the
           end of September to continue to access
           department computing facilities
CS352   Fall, 2005                                           9
Facilities
   “Cereal” machines and lab
          ~20 UltraSparc machines
          ~30+ Linux machines
          Cardkey Access: student ID card
   Romulus and remus for general use
          Create your accounts now!
          http://remus.rutgers.edu/newaccount.html



CS352   Fall, 2005                                    10
CS352 Fundamentals
Why Study Networks?
   Integral part of society
               Work, entertainment, community
   Pervasive
               Home, car, office, school, mall …
   Huge impact on people and society




CS352   Fall, 2005                                  12
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
       Form and strengthen communities
            chat rooms, MUDs, newsgroups


CS352   Fall, 2005                             13
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

CS352   Fall, 2005                                            14
Concepts for this week
   What is the Internet?
          Core and Edge of the Internet
          Circuit, message and packet switching
   Network delay analysis
          Single link
          Multi-link
   Layering and encapsulation


CS352   Fall, 2005                                 15
What is the Internet?
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
           Services

CS352   Fall, 2005                                       17
 Architecture-wise
                                                       Internet Service Provider 1
Company A



                                                                   ISP 2




 Company B



                                          Core Networks (ISP tiers)
    Host: Machine line of to send application fiber optics, satellite link)
                   running user data next
   Network : Collection of interconnected machines
Channel: decide where communication
  Router: Logical Companies, organizations with a “default route”
Media: Physical process used (copper wire,
    Edge Networks:                                           • Tier 1: Biggest ISPs
CS352 Fall, 2005                                             •Tier 2 and 3: Regional and
                                                                                   18
Service-wise (applications)
   Electronic mail
   Remote terminal
   File transfer
   Newsgroups
   File sharing
   Resource distribution
   World Wide Web
   Video conferencing
   Games
CS352   Fall, 2005            19
Protocols
              Protocol
                    Architecture  Service
                    Rules of communication

                                FTP       HTTP        RTP     TFTP

                                      TCP               UDP

                                                 IP

                               Ethernet     802.11     …      PPP

                       CAT-5    Single-Mode                     RS-232
                                   Fiber
CS352   Fall, 2005                                                       20
Core Network Switching
Schemes




How much “state” about the connection
  between two hosts does each node/router
  along a path through the network maintain?

CS352   Fall, 2005                         21
 Switching Schemes

 (1)        Circuit Switching
 (2)        Message Switching (Store-and-Forward)
 (3)        Packet Switching (Store-and-Forward)




CS352   Fall, 2005                                  22
Circuit Switching

   Provides service by setting up the total path
    of connected lines hop-by-hop from the origin
    to the destination
   Example: Telephone network




CS352   Fall, 2005                              23
Circuit Switching (cont’d)
1. Control message sets up a path from origin
  to destination
2. Return signal informs source that data
  transmission may proceed
3. Data transmission begins
4. Entire path remains allocated to the
  transmission (whether used or not)
5. When transmission is complete, source
  releases the circuit
CS352   Fall, 2005                              24
Circuit Switching (cont’d)
                                Call request signal



          Propagation Delay
          Time




                                                                               Transmission
                                                                               Delay

                                                      Call accept signal



                        Data
                 Transmission
                        Time
                                                         Data


CS352   Fall, 2005              A                B                    C    D    Routers/Switches   25
Message Switching
   Each message is addressed to a destination
   When the entire message is received at a router, the
    next step in its journey is selected; if this selected
    channel is busy, the message waits in a queue until
    the channel becomes free
   Thus, the message “hops” from node to node
    through a network while allocating only one channel
    at a time
   Analogy: Postal service

CS352   Fall, 2005                                       26
Message Switching (cont’d)


                     Header
                                  Msg
          Time




                                                                     Transmission
                                                                     Delay

                                            Msg
                                                      Queueing
                                                      Delay



                                                         Msg



CS352   Fall, 2005            A         B         C              D     Routers/switches   27
 Packet Switching

   Messages are split into smaller pieces called
    packets
   These packets are numbered and addressed and
    sent through the network one at a time
   Allows Pipelining
          Overlap sending and receiving of packets on multiple links




CS352   Fall, 2005                                                      28
Packet Switching (cont’d)


                              Pkt 1
                 Header
          Time




                              Pkt 2

                                          Pkt 1
                              Pkt 3
                                                                  Transmission
                                          Pkt 2
                                                                  Delay
                                                      Pkt 1
                                          Pkt 3

                                                      Pkt 2


                                                      Pkt 3



                                                                      Pipelining

CS352   Fall, 2005        A           B           C           D                    29
Comparisons
(1) Header Overhead
      Circuit < Message < Packet
(2) Transmission Delay
               Short Bursty Messages:
                      Packet < Message < Circuit
               Long Continuous Messages:
                      Circuit < Message < Packet



CS352   Fall, 2005                                 30
Network delay
     analysis
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



CS352   Fall, 2005                                                32
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)



CS352   Fall, 2005                                                           33
Types of Delay
   Processing
          Time to execute protocol code
   Queuing
          Time waiting in queue to be processed
   Transmission
          Time to “get bits on wires”
   Propagation
          Time for bits to “move across wires”

CS352   Fall, 2005                                 34
Transmission vs. Prop. delay
        A single transmission link as a water pipe



 1.      The thicker the pipe, the more water it can carry from one end
         to the other in each unit time
 2.      Water is carried from one end of the pipe to the other at
         constant speed, no matter how thick the pipe is

 Water = Data bits
 Thickness of the pipe = Channel capacity
 Speed of water through the pipe = Propagation speed
CS352   Fall, 2005                                                        35
Transmission vs. Prop. Delay
(cont)
        pipe




                     1.   Propagation delay is how long takes to cross
                          the pipe, irrespective of volume
                     2.   Transmission (bandwidth delay) is related to
                          how much water can be pushed in through
                          the opening per unit time




CS352   Fall, 2005                                                       36
 Transmission Time
How long does it take A to transmit an entire packet onto the link?



          Relevant information: packet length = 1500 bytes
                                channel capacity = 100 Mbps

          Another way to ask this question:
          If the link can transmit 10 million bits in a second, how
          many seconds does it take to transmit 1500 bytes (8x1500
          bits)?


               100 Mbits         1500 x 8 bits   Solving for t…
                             =                     t = 0.00012 sec (or 120 msec)
                     1 sec             t
CS352   Fall, 2005                                                           37
 Propagation Delay
How long does it take a single bit to travel on the link from A to B?



          Relevant information: link distance = 500 m
                                prop. delay factor = 5 msec/km

          Another way to ask this question:
          If it takes a signal 5 msec to travel 1 kilometer, then how
          long does it take a signal to travel 500 meters?

                 5 msec        t          Solving for t…
                          =
                1000 m        500 m               t = 2.5 msec

CS352   Fall, 2005                                                      38
Processing Delay
    Stylized format required to send data
           Analogy: adding and removing envelopes to letters

  Host                           Host
  Application                    Application
    Layer                          Layer       How long does it take
   Transport                     Transport     to execute all these
     Layer
                     Router
                                   Layer
                                               layers?
    Network          Network      Network
     Layer            Layer        Layer       Why is this time
    Host-to-          Host-to-    Host-to-
                                               important?
   Net Layer         Net Layer   Net Layer



CS352   Fall, 2005                                                     39
Example
                         A                  B
                                500 m


                   Protocol Processing Time = 40 msec
                        packet length = 1500 bytes
                       channel capacity = 100 Mbps
                   propagation delay factor = 5 msec/km

 1.      How long to format the data?
 2.      How long does it take a single bit to travel on the link
         from A to B?
 3.      How long does it take A to transmit an entire packet
CS352
         onto the link?
        Fall, 2005                                                  40
Timeline Method
                           Host A        Host B
                     40                       Protocol Delay
                             1st bit
                     2.5                      Propagation delay

Time
                     120                     Transmission time
                              last bit



                     40                       Protocol Delay

CS352
                 Total time: 40+120+2.5+40 = 202.5 msec
        Fall, 2005                                                41
Queuing Delay
                                           Router
                                            Network
                                             Layer


                                            Host-to-
                                           Net Layer
                     Packets         2 0               0 0
                                                             Packets waiting
                        waiting        3               1
                        processing         Router               transmission
                                     1 0               2 2      at output
                        at input       0               3
                        ports                                   ports


                              Packets arriving faster than
                              processing or transmission
                              delay

CS352   Fall, 2005
                              => queuing (I.e. waiting in line)                42
Analytic Comparison of multi-
link network
   Given choice of 2 switching schemes, how
    would you compare their performance?
          What would you need to know?
          What are the independent variables?
          What is the dependent variable?
   Could you come up with a closed form
    expression based on your choices?


CS352   Fall, 2005                               43
Example: Circuit Switching vs.
Packet Switching
   Goal: Determine which is faster
          Formal definition: Least time to move a fixed
           amount of data
   Approach:
          Compute time where circuit switching and packet
           switching are equal based on all possible factors
          A factor moving in one direction or the other will
           tip the balance in favor of one or the other
          We’ll ignore wire-line propagation delay in this
           example
CS352   Fall, 2005                                              44
Factors:
   Number of bytes in the message: N
   Time to set up circuit:      c
   Per-link bandwidth:               B
   Size of the packet:          p
   Size of the header:          h
   Number of switches:               s



CS352   Fall, 2005                        45
Circuit Switching Time
   Time to send N bytes using circuit switching

   = Set-up cost + bandwidth delay
                        N
                     C
                        B


CS352   Fall, 2005                                 46
 Pipelining “Parallelogram”
 for packet switching
                             Host A   Switch 1 Switch 2 Host B

                  Packet 1
                                                                 Propagation
                  Packet 2                                       Delay
                  Packet 3
Time
                  Packet 4
                                                                 Bandwidth
                                                                 Delay




 CS352   Fall, 2005                                                          47
Note on Pipelining
   The above analysis is very general:
          Packets in a computer network
               Messages/packets are the unit of work.
          Instructions in a processor
               Instructions are the unit of work.
          Jobs through a batch Q in an operating system.
               Processes are the unit of work.
   Pipelining speeds up work over time.
          How?
CS352   Fall, 2005                                          48
Packet Switching Time
    Delay = Transmission + “Propagation” delays

    “Propagation” delay:
            Time for a single packet to cross
                      - not really prop. delay in the traditional sense

          + Transmission delay (also bandwidth delay):
                  Time to push all the packets into the network


                           ( p  h)  N          ( p  h)
                ( S  1) *          (    1) *
                               B       P            B

CS352   Fall, 2005                                                        49
Packet Switching Time

                                                Transmission delay
        “Propagation” delay

                                               Number of packets
        Number of links/hops


                        ( p  h)  N          ( p  h)
             ( S  1) *          (    1) *
                            B       P            B

                               Time for each packet to
                               go through each link
CS352   Fall, 2005                                                   50
     Equilibrium Point


                            N   p  h   N      
                          C           P   S 
                            B     B   
                                        
                                                    
                                                    
                  Assuming all other factors equal, solve for C


                  Q: Can you add link propagation delay to this example?


     CS352   Fall, 2005                                                    51
Homework Questions
   If we use message switching, how does the
    time increase as we scale s?
   How does packet switching reduce the
    impact of increasing s?
   Show, using an equation, how reducing the
    packet size and packet switching reduces the
    impact of increasing s.
   Where does the approach of reducing packet
    size fail to give any benefit?
CS352   Fall, 2005                             52
 Layering and
Encapsulation
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



CS352   Fall, 2005                                           54
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

CS352   Fall, 2005                                                  55
Protocol Hierarchy (cont’d)
                 Host A                           Host B
                     Layer 7
                               Layer 7 Protocol   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
CS352   Fall, 2005                                          56
                               Physical Medium
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




CS352   Fall, 2005                                    57
Standards Making
Organizations
ISO = International Standards Organization
ITU = International Telecommunication 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
CS352   Fall, 2005                                    58
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


CS352   Fall, 2005                            59
ISO OSI Layering Architecture
              Host A                                     Host B
              Application        Application Protocol    Application
                Layer                                      Layer


             Presentation       Presentation Protocol    Presentation
                Layer                                       Layer


                Session            Session Protocol       Session
                 Layer                                     Layer


               Transport          Transport Protocol     Transport
                 Layer                                     Layer

                Network     Network           Network     Network
                 Layer       Layer             Layer       Layer


               Data Link    Data Link        Data Link   Data Link
                Layer        Layer            Layer       Layer


                Physical    Physical          Physical    Physical
CS352 Fall, 2005 Layer       Layer             Layer       Layer        60
                              Router            Router
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

CS352   Fall, 2005                                      61
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?
    Fall, 2005
CS352                                                   62
Layer 2: Data Link Layer
   Functions:
          Provides reliable transfer of information between
           two adjacent nodes
          Creates frames 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
CS352   Fall, 2005                                             63
Layer 3: Network Layer

   Functions:
          Responsible for routing decisions
               Dynamic routing
               Fixed routing
          Performs congestion control




CS352   Fall, 2005                             64
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



CS352   Fall, 2005                                                        65
   Transport Layer (cont’d)
                 Host A                                     Host B
                 Application        Application Protocol    Application
                   Layer                                      Layer
   first
end-to-end
                Presentation       Presentation Protocol    Presentation
  layer            Layer                                       Layer


                   Session            Session Protocol       Session
                    Layer                                     Layer


                  Transport          Transport Protocol     Transport
                    Layer                                     Layer

                   Network     Network           Network     Network
                    Layer       Layer             Layer       Layer


                  Data Link    Data Link        Data Link   Data Link
                   Layer        Layer            Layer       Layer


                   Physical    Physical          Physical    Physical
   CS352 Fall, 2005 Layer       Layer             Layer       Layer        66
                               Router            Router
Transport Layer (cont’d)

   Functions (cont’d):
          Perform end-to-end flow control
          Perform packet retransmission when packets are
           lost by the network




CS352   Fall, 2005                                          67
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

CS352   Fall, 2005                              68
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



CS352   Fall, 2005                                  69
Layer 7: Application Layer
   Application layer protocols are application-
    dependent
   Implements communication between two
    applications of the same type
   Examples:
          FTP
          HTTP
          SMTP (email)

CS352   Fall, 2005                                 70
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
CS352   Fall, 2005                                 71
Encapsulation
                                  Data

                 Application
                                 AH   Data
                   Layer


               Presentation
                  Layer
                                 PH      Data                    Headers
                     Session
                                 SH       Data
                      Layer


                     Transport
                                 TH          Data
                       Layer

                     Network
                                                                 Trailer
                                 NH             Data
                      Layer


                     Data Link
                                 DH              Data              DT
                      Layer


                     Physical
CS352   Fall, 2005               PH                    Data                 72
                      Layer
Internet “Hourglass”
Architecture
                    Defined by Internet Engineering Task Force (IETF)
                    “Hourglass” Design

                                FTP       HTTP        RTP     TFTP

                                      TCP               UDP

                                                 IP

                               Ethernet     802.11     …      PPP

                       CAT-5    Single-Mode                     RS-232
                                   Fiber


CS352   Fall, 2005                                                       73
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.
CS352   Fall, 2005                                                      74
TCP/IP Layering Architecture
                                A simplified model
            Application         The network layer
                                    Hosts drop packets into
              Transport              this layer, layer routes
                                     towards destination- only
                                     promise- try my best
          Internet/Network
                                The transport layer
                                    reliable byte-oriented
           Host-to-Net
                                     stream



CS352   Fall, 2005                                            75
TCP/IP Layering Architecture
(cont’d)




                 Host A                                                 Host B
                 Application               Application Protocol         Application
                   Layer                                                  Layer

                     Transport         Transport Protocol (TCP)         Transport
                       Layer                                              Layer

                     Network
                                 IP   Network
                                                  IP    Network
                                                                   IP    Network
                      Layer            Layer             Layer            Layer


                      Host-to-         Host-to-         Host-to-         Host-to-
                     Net Layer        Net Layer        Net Layer        Net Layer




CS352   Fall, 2005                                                                    76

								
To top